Programming Clojure, Fourth Edition

by: Alex Miller

Published 2026-05-10
Internal code shcloj4
Print status In Print
Pages 320
User level Beginner
Keywords clojure, lisp, functional programming, concurrency, JVM, clojurescript
Related titles

“Clojure Brain Teasers” is a series of short teaser examples paired with explanations of the result. It is useful to read in tandem with Programming Clojure to explore a reader’s understanding of how Clojure works.

“Getting Clojure” is an alternate introduction to Clojure, with a gentler approach and catering more to users of other dynamic languages like Ruby or Python.

“Clojure Applied” is the logical successor to this book, showing the next level of how to design and implement applications once you’re familiar with the language itself.

“Web Development with Clojure” shows how to user Clojure for the domain of web development.

“Mastering Clojure Macros” is a follow-up deep dive into one specific area covered at an introductory level in this book.

ISBN 9798888651919
Other ISBN Channel epub: 9798888652138
Channel PDF: 9798888652138
Kindle: 9798888652138
Safari: 9798888652138
Kindle: 9798888652138
BISACs COM051010
COM051280
COM051280

Highlight

Struggling with unnecessary complexity, unmanaged state, and brittle data that’s hard to change? Clojure combines the expressiveness of Lisp with the stability and performance of Java into a practical toolkit for creating simple, extensible applications. With immutable data structures, functional programming, and safe concurrency, Clojure makes it easier to write robust, reusable code. This definitive guide, written by members of the Clojure core team, introduces the language’s essentials and then shows how to put everything together in real applications. This edition adds practical coverage of project tooling and interactive development and fresh examples of the latest Clojure features.

Description

Build cleaner, more reliable software that can respond to changing requirements over time. Combine Clojure’s tools for maximum effectiveness as you work with immutable data, functional programming, and safe concurrency to write programs that solve real-world problems.

Start by getting comfortable with Clojure’s concise syntax and its interactive REPL, then quickly move into building with immutable collections and the powerful sequence abstraction. Gain practical fluency with functional techniques such as higher-order functions, recursion, partial application, and memoization. Beyond the basics, learn to manage state with Clojure’s reference types, build open and extensible systems using protocols and multimethods, and unlock the power of macros for creating your own language features. Seamless Java interop lets you tap into the vast Java ecosystem without sacrificing clarity or safety.

This edition adds two new chapters on project tooling and interactive development, guiding you through modern workflows with tests, builds, editors, and the REPL at the center of your process. Learn how to set up projects, manage dependencies, and work productively in Clojure’s unique interactive style. When you’re finished, you’ll be able to think in Clojure: express solutions with clarity, leverage concurrency safely, and build real-world applications that are simpler and more maintainable than you thought possible.

Contents and Extracts

Table of Contents