Programming Books C Java PHP Python Learn more Browse Programming Books
Buy New
$30.38
Qty:1
  • List Price: $44.99
  • Save: $14.61 (32%)
FREE Shipping on orders over $35.
In Stock.
Ships from and sold by Amazon.com.
Gift-wrap available.
Add to Cart
Want it Monday, April 21? Order within and choose Two-Day Shipping at checkout. Details
Trade in your item
Get a $7.29
Gift Card.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

Clojure Programming Paperback

ISBN-13: 978-1449394707 ISBN-10: 1449394701 Edition: 1st

See all 3 formats and editions Hide other formats and editions
Amazon Price New from Used from Collectible from
Kindle
"Please retry"
Rent from
$8.92
Paperback
"Please retry"
$30.38
$24.96 $19.54

Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student



Frequently Bought Together

Clojure Programming + The Joy of Clojure: Thinking the Clojure Way + Programming Clojure
Price for all three: $88.30

Buy the selected items together

NO_CONTENT_IN_FEATURE
Books for Pragmatic Programmers
Find resources for various programming needs, including agile teams, programming languages, and the life of a programmer, in the Pragmatic Bookshelf.

Product Details

  • Paperback: 632 pages
  • Publisher: O'Reilly Media; 1 edition (April 19, 2012)
  • Language: English
  • ISBN-10: 1449394701
  • ISBN-13: 978-1449394707
  • Product Dimensions: 9.2 x 7 x 1.3 inches
  • Shipping Weight: 2 pounds (View shipping rates and policies)
  • Average Customer Review: 4.5 out of 5 stars  See all reviews (34 customer reviews)
  • Amazon Best Sellers Rank: #199,594 in Books (See Top 100 in Books)

Editorial Reviews

Book Description

Practical Lisp for the Java World

About the Author

Chas Emerick is the founder of Snowtide Informatics, a small software company in Western Massachusetts. Since 2008, he has helped to develop the core Clojure language and many Clojure open source projects. Chas writes about Clojure, software development practices, entrepreneurship, and other passions at cemerick.com.

Brian Carper is a professional programmer in the field of psychological research. He uses Clojure for data analysis and web development. He's the author of a Clojure-to-CSS compiler and relational database library, and writes about Clojure and other topics at http://briancarper.net.

Christophe Grand is an independent consultant, based near Lyon, France. He tutors, trains and codes primarily in Clojure. A participant in developing the core Clojure language, he also authored the Enlive and Moustache libaries and is a contributor to Counterclockwise, the Clojure IDE for Eclipse. Christophe writes on Clojure at clj-me.cgrand.net.


More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

4.5 out of 5 stars
5 star
25
4 star
3
3 star
4
2 star
2
1 star
0
See all 34 customer reviews
The examples are straightforward, well explained, and dense.
John Atwood
Prior to reading Clojure Programming, I had read several Clojure books, including Programming Clojure, Clojure in Action, and The Joy of Clojure.
Brian
I greatly recommend this book to anyone who wants to learn Clojure or really want to grasp the language and his very high potential.
Hiram MADELAINE

Most Helpful Customer Reviews

34 of 35 people found the following review helpful By Publius on April 21, 2012
Format: Paperback
This is the most practical book on Clojure I've seen yet. At this point I've almost completely made my way through it. I bought it directly from O'Reilly (not Amazon) because I wanted it in PDF format.

I think what I like most about this book is that the authors have most often chosen to explain things in reference to scripting languages like Ruby and Python, and from business and mundane-data examples, rather than using examples from mathematics or computer science. This choice has made Clojure's power very accessible and easy for me, coming from a linux (Bash, Python, C) and web development (PHP, Ruby, Javascript), background and without any math or CS degrees. I am very grateful to the authors for writing it in such a down-to-earth way so that I have been able to absorb it easily.

I also enjoyed the extensive chapters on the practical use of the language, for things like web development, database access, tooling, and packaging. Also, their approach to discussing Java interop was very helpful to me not having dealt with Java much in the past.

Their extensive use of footnotes to comment their code examples is very helpful. When I find myself reading a line of example code and wondering why they did it that way, the footnote answers my question clearly and simply. I might have preferred actual inline comments rather than footnotes-- less jumping around in the PDF-- but the content is great.

In general, while reading it, every question that comes up in my mind seems to be answered within that paragraph or the next one (or in a footnote); the overall flow of the book and the path they've taken for building one concept upon another seemed very natural to me.

Even though it's easy to read linearly, I also found it very easy to skip around as well.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
20 of 20 people found the following review helpful By Avi Flax on April 22, 2012
Format: Paperback
Before reading this book, I was proficient with Java, JavaScript, Python, and a few other languages -- all primarily object-oriented and ALGOL-derived. Lisp and Functional Programming (FP) seemed alien and bizarre. But after hearing that people were getting real work done using FP with Scala and Clojure, and hearing Rich Hickey, the creator of Clojure, speak at Strange Loop, I was inspired to get over my apprehension and learn functional programming and Clojure.

I decided it would be unwise to try to learn FP and Clojure at the same time, so I first wrote a program using FP in languages with which I was already familiar: CoffeeScript and Scala. It didn't take long for me to build an appreciation for the paradigm.

Once I felt that I had a decent understanding of FP, I asked on Twitter whether anyone could recommend a book, and got a very enthusiastic recommendation for this one from Sean Corfield. It was available under O'Reilly's pre-release program, so I was able to buy and read pre-release PDFs of the book.

The bottom line is that this book gave me a solid understanding of Clojure and enabled me to learn the language and gradually start using it. The concepts are presented in a thoughtful sequence wherein each one builds on the next, and it's made clear how each element of the language relates to the others.

The writing, examples, and organization are all excellent. And the book gets extra points for going beyond just explaining the language and how to use it, by being extra-comprehensive and covering how to really use the full Clojure ecosystem to build really useful software.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
10 of 10 people found the following review helpful By Brian on June 25, 2012
Format: Paperback
Prior to reading Clojure Programming, I had read several Clojure books, including Programming Clojure, Clojure in Action, and The Joy of Clojure.

Clojure Programming strikes a great balance between the practical and the abstract. The book is full of practical advice such as how to use build tools, how to compose several libraries (ring, compojure, and enlive) into a web stack, and how to use popular database libraries, there is also a lot of great advice on more abstract ideas, such as how to move from an object-oriented perspective to a functional programming perspective (Chapter 12, Design Patterns, is great for some quick examples of how design patterns in some programming languages just go away because of some of the facilities of a functional programming language such as Clojure). I think the book is very approachable for programmers coming from another language such as Ruby, Python, or Java. In fact, there are even code samples translated from those languages to Clojure.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
10 of 10 people found the following review helpful By R. Friesel Jr. on May 19, 2012
Format: Paperback
In "Clojure Programming", the preface asks "Who is this book for?" It's for a lot of people: experienced JVM developers, curious Rubyists, dissatisfied Pythonistas... Developers of all stripes that are looking to get introduced to, and become proficient in, Clojure. I myself have been circling the Clojure drainpipe for a while now, very nearly getting completely sucked in on numerous occasions. I've followed no one's advice though--I have not started small, and instead keep jumping into sophisticated middle parts and getting mired. [1] I think I would have benefitted from this book a year ago; I'm certainly benefitting from it now.

At 587 pages [2], "Clojure Programming" is hardly a tome, but it is comprehensive, appreciably thorough, and makes a concerted effort to be accessible to the Clojure and JVM neophyte. That being said, the book is also far from short, and makes no pretenses about easing you into the language: you'll be programming a naïve REPL by the end of chapter one. But this head-first approach is one of the reasons to love this book.

Emerick et al. found an excellent format for organizing the book, logically sequencing the material, and peppering chapters and sections with the right kind of illustrative, "koan"-style sample problems, eschewing the alternative of walking you through some contrived and over-arching application built one concept (and thus one chapter) at a time. As such, the book is broken into five sections:

1. Functional Programming and Concurrency (the foundation);
2. Building Abstractions (the sophisticated stuff);
3. Tools, Platform, and Projects (the eco-system);
4. Practicums (Clojure in the real world); and
5. Miscellanea (other important stuff).
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Product Images from Customers

Most Recent Customer Reviews

Search
ARRAY(0xa661f774)

What Other Items Do Customers Buy After Viewing This Item?