Why Clojure?

This book uses the Clojure programming language as its learning language. Clojure has relatively simple syntax*, and is especially good at making processing data simple.

One aspect of Clojure's reputation is that it's largely used by more experienced developers. Often, its users will have a number of years of experience in other languages, then find Clojure and love it. Likewise, many Clojure resources assume some degree of familiarity with programming as a whole.

That being said, I believe Clojure is a fantastic language for learners, for one key reason: it is extremely interactive. As we will get to, developing in Clojure allows you to get instant feedback on (almost) all your code, allowing you to rapidly check your work. This also makes it a great language for just playing around and experimenting in. On top of all that, I and many other feels that Clojure is just plain enjoyable and fun.

* syntax refers to the structure of code and how it's written

What can you do with Clojure?

Every programming language has one or several things that it's particularly well-suited for, and usually a few things that it doesn't do especially well. To be upfront: Clojure isn't the best choice for a 3D video game, for instance.

Outside of 3D video games, Clojure is very well-suited for creating web applications and business applications, as well as more simple utilities. Clojure is excellent for just about anything involving processing and manipulation of data.