Saturday, 6 August 2011

Will Clojure Ever Be 'Finished'?

Clojure, as a Lisp dialect, is an extremely malleable language. The lack of syntax lends itself to creating domain specific languages. The built-in meta-programming (macros) means that anyone can add new language features. In contrast, adding new language features to Java requires a lengthy process of negotiation and compromise via the JCP.
If you give someone Fortran, he has Fortran. If you give someone Lisp, he has any language he pleases.  -- Guy Steele
Will we hit a point where Rich and the Clojure/Core team regard the core language as complete? In other words, will Clojure hit a stage where it is rich enough (no pun intended) that there is no further work required, other than to write new libraries? This seems plausible to me, and perhaps even desirable.

I'd be interested to hear Rich Hickey's view on this.

Update (18th November): at the Clojure / Conj last week, I had the opportunity to put this question to Rich. He broadly agreed with the point, saying that the core language is basically done, and that the remaining work is mostly around the edges.


  1. Today's 'finished' is tomorrow's 'insufficient'. :)

  2. Unless the language is rich enough to cope with all future requirements :)

  3. The jump in features from 1.1 to 1.2 was pretty big. The jump from 1.2 to 1.3 is much, much smaller (although perhaps less compatible?). The biggest changes are in the structure of the contrib libraries. So I would say it's close to "done".

  4. That's interesting to hear. Thanks Sean.


  5. Thank you very much for sharing this useful information!
    A good and useful post, as the exchange of useful information I want to draw your attention to virtual data room reviews