Clojure is a Lisp programming language dialect, a language that has broad library support and runs on various OS.
It is a general-purpose programming language that is dynamic and functional. It runs on the java platform combining the approachability and interactive development of a scripting language with robust and efficient infrastructure. Clojure contains a rich set of immutable and persistent data structures, excellent functions, and free-flow typing. The programs on Clojure comprise expressions and are written in abstract terms.
Without additional difficulty, Clojure applications can be easily packaged and deployed to JVMs and application servers. The dialect also provides macros, making it easy to use existing Java APIs. Clojure’s data structure implements the conventional Java interface; this makes it easy to run any code from Java that is implemented in Clojure.
There are plenty of reasons to learn Clojure: it offers a modern take on Lisp; it has an excellent parser library and a fully-featured logic engine. Immutability is the default of Clojure; this means that its memory cannot be altered, and once a data structure is created using this language, it cannot be changed. It does not have variables.
Below are 8 books that will help you on your journey to learn, master, and use the Clojure programming language.
Clojure Cookbook by Luke VanderHart and Ryan Neufeld
Clojure Cookbook is a guide that you certainly want to read if you have a genuine interest in learning the Clojure programming language. This book goes far and beyond in offering age-old advice on how to get by with the language and its available and useful libraries.
You’ll learn much more than just the Clojure syntax and semantics. There are lots of well-explained code examples with sufficient analysis and precise explanation.
Apart from this, the book also serves as a reference guide that helps you to unravel the mysteries of the language.
Clojure for the Brave and True by Daniel Higginbotham
This is an exceptional book that is very much available to read online. You can as well buy a printed copy.
It offers an approach that lets you start off by playing with real programs first and, as such, acclimatize you with the features of the Lisp programming language. It offers a practical approach to Clojure and has sample programs that you’re sure going to like.
Another fun thing about the book is that you do not require any prior experience with the Clojure language, Java Virtual Machine, or functional programming.
Clojure from the ground up by Kyle Kingsbury
This book is an excellent introduction to learning Clojure. It aims to introduce new learners as well as experienced programmers to the essence of functional programming, starting with the simplest basics of the software.
The author of this book allows for Non-commercial re-use of the book.
Full Stack Clojure by Matt Makai
This is an open book that explains every one of the Clojure web application stack layers and provides the most useful web resources for these topics. The material also talks about web frameworks, deployment, servers, and many more.
A Brief Beginner’s Guide to Clojure by John Gabriele
The purpose of this book is simply to provide newbies with a ranged view of Clojure and its ecosystem; this also includes how to make a quick entry into using the language. The chapters of the book cover right from installation directives to the development environment, the language itself, and many more.
Clojure in small pieces. Edited by Timothy Daly
This book has several authors but Timothy Daly is the editor. It contains some 1,801 pages, and it enables its readers to study and understand portions of Clojure.
Clojure Programming by Wikibooks
This is a book that helps readers to maximize the full benefits of Clojure. it has a ‘Getting started’ section that guides you on how to download and install Clojure. After this, the book moves right to the basics of the dialect such as the supported data types, functional programming, and concurrency features.
The next section deals with tutorials and useful tips.
ClojureScript Unravelled by Andrey Antukh and Alejandro Gómez
The aim of this book is simply to serve as a comprehensive introduction for people with no previous experience with Clojure or functional programming to the ClojureScript language and its usage; an explanatory guide to the ClojureScript compiler and its tools; provision of topics that are important in the day-to-day ClojureScript programming.