&gt; Wondering if you could make a lisp where `lambda` or `fn` required type annotations<p>…<p>&gt; Someone implemented it in Common Lisp in the 80s I&#x27;m sure.<p>Even better, it&#x27;s a standard part of Common Lisp: functions default to being &#x27;typed&#x27; to take the universal type, but annotations can be used to declare any types you want (to include types like (integer 3 27), which specifies an integer between 3 and 27), which can be compiler-enforced.<p>I really don&#x27;t understand why Common Lisp doesn&#x27;t see more use.  It&#x27;s modelling clay for computation.