Programming Clojure

Programming Clojure

4.5 2
by Stuart Halloway, Aaron Bedra

See All Formats & Editions

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


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

Editorial Reviews

From the Publisher
"Clojure is one of the most interesting languages out there right now, and the best way of learning Clojure just got better. The second edition of “Programming Clojure” adds up-to-date information, plenty of practical examples, and a ton of useful tips on how to learn, work with, and succeed with Clojure."

—Ola Bini, Creator of Ioke language, developer, ThoughtWorks

"The authors have charted the smoothest path yet to Clojure fluency with this well-organized and easy-to-read book. They have a knack for creating simple and effective examples that demonstrate how the language’s unique features fit together."
—Chris Houser Primary Clojure contributor and library author

"Clojure is a beautiful, elegant, and very powerful language on the JVM. It’s like a cathedral: you could wander into it, but you’d prefer the company of a knowledgeable guide who can give you their perspective, to help you grasp and appreciate the architecture and the art. In this book you can enjoy and benefit from the company of not one, but two seasoned developers who have the depth of knowledge and the perspective you need."
—Dr. Venkat Subramaniam, Award-winning author and founder of Agile Developer, Inc.

Product Details

Pragmatic Programmers, LLC, The
Publication date:
Edition description:
Second Edition
Sales rank:
Product dimensions:
7.40(w) x 8.90(h) x 1.00(d)

Meet 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.

Customer Reviews

Average Review:

Post to your social network


Most Helpful Customer Reviews

See all customer reviews

Programming Clojure 4.5 out of 5 based on 0 ratings. 2 reviews.
timmorgan More than 1 year ago
I've tried to learn Clojure a few times using online tutorials and blog posts. If, like me, you're from a background other than Java, Lisp, or Functional Programming (any of which might give you a jump start on learning the Clojure language), bits and pieces of information online aren't enough to immerse you in the language and its paradigms. Programming Clojure is a perfectly structured introduction to the world of Clojure and strikes a balance between explaining general Functional Programming concepts, Lisp syntax, and general usage of the Clojure language itself. Mr. Holloway litters throughout the book plenty of real-world example code to bridge the gap between theoretical and the actual. For me, this book nailed its audience with uncanny accuracy. If you're coming from an imperative, object-oriented programming background, this book is perfect for diving into the world of functional style and limited "side effects." The language is growing and changing on a daily basis. My only complaint of this book is that it doesn't seem to indicate which version of Clojure it covers, and doesn't tackle "futures" and "promises" which suggests it's a 1.0 book. I had to do some online reading to get caught up with the latest features of the language once I had completed the book. Still, I don't think I could have jumped into the world of Clojure without the help of this book. It was worth every penny.
Michael_Sw More than 1 year ago
Clojure is a programming language that runs on the Java Virtual Machine. The language is called a LISP dialect - it is not a full implementation of the LISP language specification (Armed Bear Common Lisp is a full LISP implementation on the Java Virtual Machine). The creator of Clojure intentionally broke compatibility with standard LISP in an attempt to make the language simpler to learn and simpler and more practical to use in real world applications. I believe he succeeded, though I am not an expert in LISP so don't weigh my support too heavily. This book is not for someone completely new to writing software, and neither is it a complete reference to the Clojure language. But for someone already experienced writing software in other mainstream programming languages, it's a good introduction to Clojure. If you're coming to Clojure without Java experience, I do not think it is a problem. You can skip the chapter on Java interoperability and work entirely in Clojure. The project management tool Lein for Clojure takes care of working with the Java Virtual Machine for you behind the scenes, you don't need to know Java. On the other hand, as someone that doesn't know LISP very well, I imagine knowing LISP would make the book far easier to understand. Because Clojure's syntax is so simple - no special rules for loops, no operator precedence rules, etc... you get the basics in a hurry and then jump feet first into using advanced features. It'll take half an hour to read a chapter and than another two days playing with the example code from that chapter to really understand the concepts. I recommend the book, I learned a lot and I don't regret buying it, but I would hope there would be something a little better out there.