small medium large xlarge

Getting Clojure: Build Your Functional Skills One Idea at a Time, in print

May 09, 2018

Behind every programming language lies a vision of how programs should be built. The vision behind Clojure is of a radically simple language framework holding together a sophisticated collection of programming features. To really "get" Clojure, you need Getting Clojure: Build Your Functional Skills One Idea at a Time, now in print and shipping from

Come and get it, and get it.


Getting Clojure: Build Your Functional Skills One Idea at a Time

Clojure attracts developers on the cutting edge and is arguably the best language for learning to program in the functional style without compromise. But this comes with a steep learning curve. Getting Clojure directly addresses this by teaching you how to think functionally as it teaches you the language. You’ll learn about Clojure’s powerful data structures and high-level functions, but you’ll also learn what it means for a language to be functional, and how to think in Clojure’s functional way.

Each chapter of Getting Clojure takes a feature or two or three from the language, explains the syntax and the mechanics behind that feature so that you can make it work before digging into the deeper questions: What is the thinking behind the feature? And how does it fit in with the rest of the language? In Getting Clojure you'll learn Clojure's very simple syntax, but you'll also learn why that syntax is integral the way the language is constructed. You'll discover that most data structures in Clojure are immutable, but also why that leads to more reliable programs. And you'll see how easy it is to write Clojure functions and also how you can use those functions to build complex and capable systems.

With real-world examples of how working Clojure programmers use the language, Getting Clojure will help you see the challenges of programming through the eye of experienced Clojure developers.

Now in print and shipping from

Upcoming Author Appearances

  • 2018-05-09 VM Brasseur, PyCon US, Cleveland, OH
  • 2018-05-09 Michael Keeling, SATURN 2018 in Dallas, TX
  • 2018-05-16 Richard Whaling, Scala Days Berlin
  • 2018-05-18 Chris Strom, NationJS
  • 2018-05-22 Diana Larsen, Mile High Agile 2018, Denver, CO
  • 2018-05-23 Michael Keeling, XP 2018 in Porto, Portugal
  • 2018-05-24 Michael Keeling, XP 2018 in Porto, Portugal
  • 2018-06-04 Ryan Ripley, Agile Dev West 2018 – Las Vegas, NV
  • 2018-06-04 Ryan Ripley, Agile Dev West 2018 – Las Vegas, NV
  • 2018-06-06 VM Brasseur, OpenWest, Sandy, UT
  • 2018-06-07 Johanna Rothman, Influential Agile Leader, Boston
  • 2018-06-07 VM Brasseur, OpenWest, Sandy, UT
  • 2018-06-12 Jeremy Fairbank, Fluent Conf, San Jose, CA
  • 2018-06-13 Diana Larsen, Perfecting Practice Adoption with Agile Fluency™ Model – an Agile Fluency game workshop, Louisville, KY
  • 2018-06-15 Diana Larsen, Derby City Agile, Louisville, KY
  • 2018-06-17 VM Brasseur, The Perl Conference, Salt Lake City, UT
  • 2018-06-20 Richard Whaling, Scala Days New York
  • 2018-07-13 Dmitry Zinoviev, IC2S2, Evanston, IL
  • 2018-07-16 VM Brasseur, OSCON, Portland, OR
  • 2018-07-16 VM Brasseur, OSCON, Portland, OR
  • You Could Be a Published Author

    Is there a tech topic you are deeply passionate about and want to share with the rest of us? You could become a published Pragmatic Bookshelf author! Take a look at our page for details, including our 50% royalty (yes, for real!) and world-class development editors.

    Don't Get Left Out

    Are your friends jealous that you get these spiffy email newsletters and they don't? Clue them in that all they need to do is create an account on (email address and password is all it takes) and select the checkbox to receive newsletters.

    Are you following us on Twitter and/or Facebook? Here's where you can find us and keep up with the latest news and commentary, and occasional discounts:

    Tell your friends! Tweet this

    Follow us on Twitter: @pragprog, @pragpub, Andy Hunt @PragmaticAndy.

    Coming Soon:

    • Programming Phoenix ≥ 1.4: Productive |> Reliable |> Fast, in beta
    • Programming Elixir ≥ 1.6: Functional |> Concurrent |> Pragmatic |> Fun, in print
    • Build Reactive Websites with RxJS: Master Observables and Wrangle Events, in beta
    • Programming Ecto: Build Database Apps in Elixir for Scalability and Performance, in beta

    Recently Released:

    Thanks for your continued support,

    Andy Hunt Publisher, Pragmatic Bookshelf

    Books • eBooks • PragPub Magazine • Audiobooks and Screencasts