I've been hacking Lisp, professionally and as a hobbyist, for about eighteen years now. Starting with elisp and Scheme, and then Common Lisp for the past eight years. At the risk of importing my CV into this post, I've worked in Smalltalk, Objective-C, Java; even some Cadence SKILL. More recently, I got to work on a reasonably extensive project in Erlang. Before you write me off as a mono-lingual snob, let me assure you I've had a fair amount of experience with C and its derivative family of languages as well. I just happen to be a bigger fan of Lisp, and functional programming in general; which leads me to clojure.
I first heard about clojure a year back, and was very impressed with the design motivations of its creator, Rich Hickey. A pure functional Lisp with immutable data structures, STM, actors … and, efficient Java interop! Sounded too good, so I had to check it out. Since then, I've been following the development of the language and its libraries, read the Programming Clojure book, and played with it enough to be somewhat productive.
And, this week (May 4, 2009) Rich Hickey formally announced the release of Clojure 1.0, which is great news. Congratulations to Rich and all the other contributors. To mark this major milestone in Clojure's history, and to add my own little bit to its growth, I decided to blog about my experiences with clojure as I learn and apply it. Hopefully, my experiences will be of some use or entertainment to others :)
PS: About the name - cynojure is a play (in keeping with clojure tradition) on the word cynosure, which according to WordNet has the following meanings:
something that provides guidance (as Polaris guides mariners)
something that strongly attracts attention and admiration
Perhaps a bit grandiose, but I thought it was suitable.