Saturday, February 9, 2008

Ultra-Balkanization Makes Lisp Autistic

An interesting perspective. It's too long, so I extracted key sentences expressing the idea I find interesting: Lisp's hyper-specific DSL features make Lisp programs autistic.

A language is an interface between programmers and hardware, so it has social/psychological/pedagogical features which are just as important as its formal properties. Many Lisp zealots dismiss the language's failures as "merely social", but that's missing the purpose of a language entirely. Normal syntax gives you a feeling of what's idiomatic vs. what's weird. With sexps, it's much harder to create, maintain and convey such opinions in the code's appearance. Without this consensus you'll have a hard time building a functional social group. Since with Lisp you essentially design your own single-use language for your application, you're the only one in the world using that language variant.