2008-10-23

"Clojure for Lisp Programmers" Talk Summary

In his talk Rich Hickey made an overview of the major features of Clojure and the design rationale behind them. Except for being Lisp-1, as far as I understand, Clojure is mostly based in and inspired by Common Lisp. Moreover, it tries to push some of the CL technologies to even purer abstraction and generality.

I've tried to categorize the discussed features in their relation to Common Lisp:

Taken from CL and stretched/modified

destructuring

nil behavior in conditionals

defmacro

multimethods with dispatch by an arbitrary function of arguments

Obviously is more general, than the CL variant, although Rich failed to mention, that CL's generic functions have also dispatch by EQL, which is enough for, I think, 95% of the situations.