Clojure is a practical, general-purpose language that offers expressivity rivaling other dynamic languages like Ruby and Python, while seamlessly taking advantage of Java libraries, services, and all of the resources of the JVM ecosystem. This book helps you learn the fundamentals of Clojure with examples relating it to the languages you know already, in the domains and topics you work with every day. See how this JVM language can help eliminate unnecessary complexity from your programming practice and open up new options for solving the most challenging problems.
Clojure Programming demonstrates the language's flexibility by showing how it can be used for common tasks like web programming and working with databases, up through more demanding applications that require safe, effective concurrency and parallelism, data analysis, and more. This in-depth look helps tie together the full Clojure development experience, from how to organize your project and an introduction to Clojure build tooling, to a tutorial on how to make the most of Clojure's REPL during development, and how to deploy your finished application in a cloud environment.
Learn how to use Clojure while leveraging your investment in the Java platform Understand the advantages of Clojure as an efficient Lisp for the JVM See how Clojure is used today in several practical domains Discover how Clojure eliminates the need for many verbose and complicated design patterns Deploy large or small web applications to the cloud with Clojure
Chas Emerick is the founder of Snowtide Informatics, a small software company in Western Massachusetts where he is the technical lead for PDFTextStream, a PDF content extraction library for Java and .NET. He has been a consistent presence in the Clojure community since early 2008, has had contributions included in the core language, been involved in dozens of Clojure open source projects, and was an invited speaker at the first Clojure Conj in 2010. 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. Since 2008 he's used Clojure for data analysis and web development at work and at home. 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. He joined the Clojure Community in 2008, and became a contributor to the core language. He also authored of the Enlive and Moustache libaries and is a contributor to Counterclockwise, the Clojure IDE for Eclipse. Christophe was a speaker at the first Clojure Conj and writes on Clojure at clj-me.cgrand.net.