Discovering Clojure and Compojure at Devoxx 2009 and its Twitter Stream

By the time you read this, Devoxx 2009 will be almost over. Another year of talks on all things related to Java. A great moment every year to discover new technology, rekindle with old colleagues and get inspired. This year I took my iPod Touch with me and tried to Tweet a little, when the network allowed it. That turned out to be a great idea.

Clojure is a relatively new language that I’ve been wanting to discover and try out for some time now. So seeing a talk about it, set me into action. I knew Clojure is a functional language that compiles to Java bytecode, but that’s about it. What I didn’t know was that Clojure is basically Lisp for the JVM. It uses Lisp‘s immediately recognizable parenthesized lists.

What attracts me in Clojure is how clean the language is. With very little syntax and just a few building blocks, anything is possible. Function execution has no side-effects, something which should appeal to any programmer, but might also raise a few questions.

A question that immediately came to mind, was how to incorporate this in a web application. Web applications are my bread and butter after all. I tweeted this question and, behold, the power of Twitter, I instantly got two thumbs up for compojure (and tutorial).

An elegant solution for a not so elegant problem. And one more thing to try out.

And I have a questions for my readers: do you have any experience applying functional programming to web applications?