In my brief experience (so take my opinion with a grain of salt), it's the Clojure ecosystem around Clojure that is the problem, not the Java one it interops with. There is hardly any unification for anything except that it looks like Ring is the main HTTP lib (just for http; beyond that, how many routing libraries are there now?), and edit: there is a lot of library churn that goes with that, which to me totally conflicts with the language's reputation for being evolutionary and stable. Most libraries I have seen are written and maintained by a single author. 50% or so of the libraries I have seen are just plain dead questionably dead, including stuff written by Cognitect. It's not a healthy situation. It's a shame, because the language itself is awesome.