Mere Technology It’s just ones and zeros…really!

14Mar/090

On Clojure

I attended an interesting meetup the other night of the London Java Community group. Rich Hickey, the author of Clojure spoke about his motivations for creating the language, and what it was all about.

Clojure is a new language written for the jvm aimed particularly at addressing concurrency issues that plague java and other Object Oriented languages. Written as a Lisp, Clojure is a functional language that treats data structures as programs, and enforces the usage of immutable objects. Rich and others, see the proliferation of mutable objects as the bane of many large systems built using todays mainstream OO languages and expect the concurrency problems related to these to massively increase as we enter the multi core processing era.

By runnning on the JVM - an already stable platform with market saturation, Clojure, as with Groovy and others leverage much of the hard won programatic support enjoyed by java developers, such as garbage collection. It is interesting to see new language development move in this direction, as it greatly reduces the implementational scope for new languages to address.

Will be interesting to watch how Clojure progresses, and see if it really will make all our concurrency dreams come true!

Update:

InfoQ has a roundup today on what it new and interesting in the world of Clojure. One of the interesting facets of the language is that because the vast majority of the language is written in Clojure itself . The remainder (ie that which is platform specific) is actually a really small set of core operations.

ThisĀ  means that it is relatively easily ported to other platforms such as CLR and (believe it or not) Javascript! The possibilities of the exact same language running on both the client and server in a web situation are interesting to say the least.

Comments (0) Trackbacks (0)

No comments yet.


Leave a comment


No trackbacks yet.