Clojure1 is a functional, symbiotic, and homoiconic programming language.
OK, for an opening line I’m sure you will agree that’s a bit of a mouthful. So, let’s break that sentence down a bit and focus on the words functional, symbiotic, and homoiconic in order to understand what they mean.
Fear not if the following descriptions end up sounding like academic nonsense; we’ll be covering these concepts in more detail as we make our way through the various chapters of this book, and you’ll come to realize that they do, in fact, have very practical usage in Clojure.
Functional: where functions are first-class ...