Tuesday, 22 December 2009

The Appeal of Clojure

Lisp has always intrigued me. A few years ago I bought "Practical Common Lisp" by Peter Seibel and "On Lisp" by Paul Graham. I read the Paul Graham book but never got round to working through PCL. There were a couple of reasons for this:
  1. Emacs. Now I appreciate that Emacs is an incredibly versatile and powerful program. But my god, it's a daunting one to begin using. My attempt to learn Lisp quickly became an attempt to learn Emacs, and at some point along the way I lost interest in shaving that particular yak.
  2. I also had the feeling that Lisp would never be a language that I would be able to incorporate into my life as a corporate programmer. I couldn't forsee being able to write little scripts, or tests, or personal apps to use at work in Lisp.
And so the Lisp books went back onto my bookshelf.

Clojure is a Lisp built on top of an environment I already know. I can concentrate on learning the language without having to shave any yaks. I can develop it in NetBeans (my IDE of choice), using Enclojure. And it's built on top of the JVM, which means I have access to all the Java libraries I know and love. This means that I can forsee being able to use Clojure at work.

I'm very excited about this. The wow moment I had yesterday while working through the initial pages of "Programming Clojure" really got the juices flowing. I'm looking forward to being able to read and understand in depth blog entries like http://meshy.org/2009/12/13/widefinder-2-with-clojure.html. And more importantly, I'm really excited about using Clojure to develop my personal projects at home. It will be a very pleasant change from the endless lines of boilerplate Java code I churn out at work.

No comments:

Post a Comment