Re: What's so great about lisp?



> I said that static type checkers catch >50% of my errors in most of my code.

I'm probably in the minority here, but I happen to like static
typechecking.

Nice as it is, however, Hindley-Damas-Milner is not all there is to
static typechecking. My preference is to use a Lisp environment with
good type propagation (and in practice that limits me to CMUCL or
SBCL) and declare the argument types of all non-trivial functions. In
practice, this tends to catch most of what Hindley-Milner would catch
(as compile-time warnings rather than errors) while still allowing you
to use all the goodies present in Lisp but missing in Caml or Haskell.

Note that this is from a practical point of view. From a theoretical
point of view the CMUCL typechecker is an ugly hack -- but an
amazingly convenient one. (Just like Common Lisp itself.)

Juliusz

.