Synopses & Reviews
The second edition of Programming Clojure is the first book to cover the new features in Clojure 1.3. Clojure experts Stuart Halloway and Aaron Bedra have updated the first book on Clojure, and new examples have been added to demonstrate the power and depth of the new features.
Clojure is an increasingly important language. It recently overtook Scala in relative growth, and is becoming the language of choice for many who are moving to functional programming or dealing with the challenges of concurrency. More and more developers are starting to see what Clojure has to offer.
Simplicity. Clojure's clean, careful design lets you write programs that get right to the essence of a problem, without a lot of clutter and ceremony.
Clojure has the power inherent in Lisp, but is not constrained by its history.
Clojure is a functional language. Data structures are immutable, and functions tend to be side-effect free. This makes it easier to write correct programs, and to compose large programs from smaller ones.
Clojure is concurrent. Rather than error-prone locking, Clojure provides software transactional memory.
Clojure embraces Java. Calling from Clojure to Java is direct, and goes through no translation layer.
Clojure is fast. Wherever you need it, you can get the exact same performance that you could get from hand-written Java code.
Many other languages offer some of these features, but the combination of them all makes Clojure sparkle. Programming Clojure, 2nd Edition shows you why these features are so important, and how you can use Clojure to build powerful programs quickly.
Reviewers called the first edition of Programming Clojure "a masterwork," "well-organized and easy-to-read," "a great reference," "a mature and polished guide," and "a real pleasure to read." This second edition not only provides up-to-date coverage of the language, but is a fantastic reference that you can keep close to you during the development of your own Clojure programs.
What You Need:
Oracle JDK 6
A text editor
If you want to keep up with the significant changes in this important language, you need the second edition of Programming Clojure. Stu and Aaron describe the modifications to the numerics system in Clojure 1.3, explain new Clojure concepts such as Protocols and Datatypes, and teach you how to think in Clojure.
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. Many code examples have been rewritten or replaced, and every page has been reevaluated in the light of Clojure 1.3.
As Aaron and Stu show you how to build an application from scratch, you'll get a rich view into a complete Clojure workflow. And you'll get an invaluable education in thinking in Clojure as you work out solutions to the various parts of a problem.
Clojure is becoming the language of choice for many who are moving to functional programming or dealing with the challenges of concurrency. Clojure offers:
The simplicity of an elegantly designed language
The power of Lisp
The virtues of concurrency and functional style
The reach of the JVM
The speed of hand-written Java code
It's the combination of these features that makes Clojure sparkle. Programming Clojure, 2nd Edition shows you how to think in Clojure, and to take advantage of these combined strengths to build powerful programs quickly.
What You Need:
Oracle JDK 6
A text editor
About the Author
Stuart Halloway is a member of Clojure/core and CTO at Relevance, where he spends his time on secret projects for world domination, and watching Phineas and Ferb.
Aaron Bedra is a member of Clojure/core and a developer at Relevance, Inc. where he spends his time as a tech lead, speaker and author. He is a frequent contributor to the Clojure language and its supporting libraries as well as an active member of the Clojure community. Aaron has led the development of several commercial Clojure projects.