Clojure is my first functional programming language. Although Python has functional programming elements, I don’t consider it a functional programming language, and have not seen many, if any, arguments that it is. Clojure is considered a functional programming language, albeit not a pure functional programming language, unlike Haskell, which is considered a pure functional programming language.
As I have been learning Clojure, I’ve seen Rich Hickey’s reading list , and while that might be useful for learning Lisp syntax, or functional programming, Clojure itself is a unique enough Lisp dialect that in my opinion it requires learning material not all of which is available today. Specifically, although you are learning Lisp syntax, interaction with Java, and processing sequences, Clojure experts who frequently answer questions in the Clojure Google Group refer to tail recursion as programming at a low-level, and encourage the use of Clojure’s sequence library. So, the questions becomes where are those Clojure sequence library training/reading resources?
I have reviewed most of the “big name” Clojure books out there. From what I can tell, they are all well written with good examples, and introduce the Clojure language. That is these books are more of an introduction to Clojure — not a bad thing — but we now need a Clojure sequence library cookbook.