I haven't had the chance to check it out yet so can't vouch for quality. But it seemed that a few people on the thread are considering getting into Clojure, so I thought I'd share.
https://github.com/functional-koans/clojure-koans http://www.4clojure.com/ http://www.amazon.com/Joy-Clojure-Thinking-Way/dp/1935182641...
Personally, I think Joy of Clojure is the "why" as well as "how to do it well". I learned the "what" mostly from Practical Clojure, which was good enough, but definitely not great. Programming Clojure (2nd ed. for clj v 1.3, still in progress) seems organized like a conversation in chapters, i.e., you'd have to read it entirely sequentially, and targeted random-access might be difficult for first-time learners. I don't how Clojure Programming will be, but I hope it raises the bar for teaching newbies.
FYI, a Common Lisp book nearly made it out of the gate a couple of years ago, Nick Levine's 'Lisp Out of the Box'. The contents of it are available under a Creative Commons license:
It seems to be a strong recommendation rather than a hard rule, though. Clojure is worthy of an exception in my opinion.
I've been dabbling in Lisp (read Land of Lisp and am going through PCL) and eventually I'd like to create my own text-based game using common lisp. However, I am indeed wondering if/how it would make sense to use it at work.
I mostly do full stack web stuff (ruby/sinatra/rails, javascript) and I'm not at all sure where Lisp would fit in. In fact, I don't really know what it brings to the table except its expressiveness. As opposed to e.g. python, java, c, or objective-c where I have a decent idea of the domains where they shine.
»We're NOT looking for: (...) Books on topics that have dismal sales despite quality books being available. (If you're addressing a topic where good books have sold dismally in the past (for instance, LISP, LaTeX, or Web-based training), you have a much higher threshold to clear with your proposal. Convince us why there is a revival of interest in your topic, or why your approach to a deadly topic will provoke interest nonetheless.)« (from http://oreilly.com/oreilly/author/writeforus_1101.html)
However, in 2009 an O'Reilly editor wrote: »I think there's reason to believe that's changing, particularly with the right book; LISP awareness has been growing for the past couple of years. Our Haskell book has outsold expectations; Erlang has obviously made a comeback; so there has been a relatively recent shift in the language map.« (from http://lisp-book.org/talks/eclm-2011-10-23/plan.txt)
Also typical Lisp hacker won't buy a slightly edited and printed version of the HyperSpec or a printed version of the SBCL manual.
Add to that that Lisp made a deep dive after the AI winter and that they were sure to not sell enough copies. At that time it was also a good idea not to be connected to Lisp.
Plus, I guess they did not like Lisp. 'Clojure' has the 'advantage' not to use 'Lisp' in its name.
I love using Java for the exact reason the author claims Clojure is so powerful--the magnitude of libraries.
If a decent web framework is available, then I would be inclined to give it a go.
However, the Clojure philosophy seems to be trending towards building your own composition of highly composable micro-libraries, rather than being handed one monolithic framework. It works very well, but does have the side effect that there isn't real "one stop shop" for beginners.
And when you're designing a webapp (or any app) in Clojure, you'll notice that you have a much higher degree of freedom regarding how to do things. There's no "one true way" the way there is with Rails. Again, this is extremely powerful, but it makes the next step somewhat less obvious for beginners.
There's immense value in the approach the Clojure ecosystem has taken. For example, how many other places can you seamlessly swap out your webapp's server from something like jetty (thread-based) to tomcat (battle-hardened) to netty (NIO) to ...
FWIW, https://www.readyforzero.com/ is a non-trivial app in production that is built entirely on Noir.
Frameworks are largely not used, at least in the monolithic, un-composable way that 'frameworks' generally are in other languages. This is what makes it so easy for alternative conceptualizations of the problem to come about (i.e. Noir, which also uses Ring and Compojure, but with different defaults, some macro sugar, and hiccup for templating), and themselves to be mixed/integrated with other web codebases. For example, you can trivially compose a noir application with a couple of "low level" Ring handlers with another app written using Moustache and stringtemplate.
That is all to say, yes, you'll find all the pieces you need for web development.
webnoir.org
That's not to say it isn't great and useful, it is. I'm noticing a couple of trends in Clojure development: big data and esoteric. Take a look at Storm (twitter's data processing engine) and Overtone.
Simplicity: it's easier to reason about a Clojure program. Speed: Idiomatic Clojure tends to be as fast as Java when it matters. Power: If an abstraction you need isn't present, you can write your own. Code reuse is insanely high.