This book is the first definitive reference for the Clojure language, providing both an introduction to functional programming in general and a more specific introduction to Clojure s features. This book demonstrates the use of the language through examples, including features such assoftware transactional memory (STM)and immutability, which may be new to programmers coming from other languages.
Overview of functional programming and description of what sets Clojure apart from other languages Detailed explanation of Clojure s special features Examples of real-world tasks that are well-suited to Clojure s capabilities, starting with simple tasks and moving on to more complex applications "
There are a couple of ways of evaluating a book like this. The first is to compare it against other books of its kind. Since this is the first book I have read about the Clojure programming language, I can't really say if this is better than the (singular) alternative text. However, being recently published, it does have the opportunity to be a little more up-to-date, an opportunity that Practical Clojure utilizes to include a chapter on Datatypes and Protocols, two features added in Clojure 1.2 (still to be released). Of course the downside to a brand new book is that some mistakes creep in that might be corrected in future editions. The most prevalent mistakes that I noticed were inconsistencies in formatting. The most serious such mistake was use of the doseq form without explanation.
The other way that one might evaluate a book about a programming language is to explain the level at which it is aimed. Such levels might be characterized as Introductory (meaning the reader is ignorant of basic programming concepts), Beginner (emphasizing the rudiments of the language's syntax, and how to do basic things), Intermediate (usually a comprehensive reference of language elements, including standard libraries, as well as a walkthrough of some larger "realistic" example code), and Advanced (either a deep-dive on a particular topic, or explanations of the most esoteric features). Practical Clojure is a "Beginner" text in the sense explained above. The reader will find a description of core language features, but standard libraries are barely referred to. Sample code is extremely short, which means the reader won't find much guidance on idiomatic solutions for more realistic problems.
A dense and solid, yet incomplete intro to the Clojure programming language. Nothing apart from the language overview and some performance considerations is provided, so the title is somewhat misleading - "Clojure language in a nutshell" would do it more justice. I found the style terrifically clear and straight-to-the-point, which makes it a good read. On the other hand, important information like destructuring, the reader, etc. has been left out. I'm not familiar if there is an updated edition, but this one is now quite dated, as it refers to Clojure 1.2 in the future tense. Regardless, I feel that I learned a lot by reading it, and that I have a better idea on what's out there in the Clojure ecosystem. I enjoyed the book for it's concise style, but I wish it offered a fuller coverage of the subject matter.
Not as well-written as Stuart Halloway's Programming Clojure, but the killer feature Practical Clojure is being recent enough to cover Clojure version 1.2. Features like protocols, reify, et al are important topics for Clojure programmers to understand. An update version of Stu's book or the upcoming Clojure in Action from Manning might be better options at a later date, but, if you're buying a Clojure book today, this should be your choice.
Very good & concise introduction into Clojure programming language. This book contains all necessary information about language, including experimental features, such as Protocols & Datatypes. Although, it doesn't contain much complete examples, in difference to Programming Clojure...
Good book to start if you have little to no lisp knowledge. Gives an overview of the clojure languaage, java interop, concurrency in clojure and macros in clojure.
Perhaps a good choice for a first Clojure book. The code examples are rather simple and to-the-point. Not much in-depth discussion is provided, but I guess that's OK for an introductory book.