Writing multi-threaded code is hard. If you’ve ever done concurrent programming, you’ll probably agree. Clojure offers a compelling alternative to traditional object-oriented approaches to programming and has garnered much attention from the Ruby community because of it’s elegant design that lets you get right to the essence of a problem.
Simply put, Clojure is a functional programming language for the Java Virtual Machine with several powerful features for building concurrent applications. In addition, Clojure is fast, robust, and a powerful general-purpose programming language. A dialect of Lisp, Clojure embraces traditional code-as-data philosophy and a powerful macro system, plus some syntactic sugar tailored to Java.
Now that version 1.0 is out and Stuart Halloway’s new book Programming Clojure just dropped, I’ve rounded up some of the best articles and tutorials on Clojure to you get you up to speed quickly.
A Clojure Tutorial by R. Mark Volkmann
Programming Clojure book by Stuart Halloway
Practical Common Lisp to Clojure by Stuart Halloway
Clojure Series: Table of Contents by Eric Rochester
Learning Clojure via Wikibooks
Clojure Programming/Examples/API Examples via Wikibooks
Clojure Programming/Tutorials and Tips via Wikibooks
Functional Programming with Clojure by Phil Hagelberg (PeepCode)
Clojure Series on Blip.tv by Rich Hickey
Intro to Clojure by Brian Will (YouTube)
Emacs with Clojure, Slime and Swank by Seth Buntin (Vimeo)
Basic Clojure Setup by Telman Yusupov
Setting Up Clojure for Mac OS X Leopard by Mark Reid
Getting Emacs setup to write Clojure code by Phil Hagelberg
Textmate Bundle for Clojure code by Scott Fleckenstein
Clojure Coding Guidelines by Mark Volkmann