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.
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.
PS - nothing against Clojure, not trying to hijack this whole thread, just add to it. Clojure + Scala makes the JVM a truly awesome platform. The power and features of both Lisp and ML, the brevity of both.
webnoir.org