If you've seen how dozens of lines of Java or Ruby can dissolve into just a few lines of Clojure, you'll know why the authors of this book call it a "joyful language." Clojure is a dialect of Lisp that runs on the JVM.

Programming Clojure, 2nd Edition is a significant update to the classic book on the Clojure language. You'll get thorough coverage of all the new features of Clojure 1.3, and enjoy reorganized and rewritten chapters that reflect the significance of new Clojure concepts.

Clojure is a new Lisp that runs on the JVM and CLR, and provides interesting new ways to write highly concurrent programs. Rather than make use of complicated locking primitives, Clojure provides a set of powerful, immutable-by-default data types and adds language-level support for mutating them in controlled ways. We'll examine just enough Clojure syntax to allow us to delve into this approach to managing concurrency-based complexity. No previous exposure to Clojure is assumed or required.