Clojure & Complexity
lisp-univ-etc.blogspot.com
lisp-univ-etc.blogspot.com
https://github.com/technomancy/leiningen/blob/master/test_pr...
This isn't ideal, but here you have to make some trade-off, because in both Java and Lisp you can't have two versions of the same library loaded at once (actually, in Lisp you can do that with some rename-package trickery, but that's beyond the scope of quicklisp. I wonder, can you do the same thing in clojure? ;)
Considering specifying dev-dependencies. Once again it's not in the scope of quicklisp, which is a library distribution tool and not a dependency management tool. But ASDF, the build tool and dependency management system, allows to do that quite easy: for example, you can define a separate system for dev, which you may load or not load, depending on your needs.
Actually, leiningen tries to do all at once: dependency management, library distribution and building. And that's why it's quite complicated (in the sense of Rich Hickey's complecting, I mean)...
I don’t like ASDF. It feels ugly.
Actually Leiningen defers dependency management entirely to maven/aether and distribution to Clojars.
I am also not aware of repository managers for CL. Several of our libs have to be managed manually. Our CLJ libs however we can simply store in our private repo proxy. For other devs it is nothing more than a dependency they add in Leiningen and be done with it. It is trivial to set this up in Jenkins, which automatically uploads relevant artifacts into the repo. This is a fantastic and productive environment, Bundled with greater productivity in Clojure I would start new projects today pretty much always with Clojure, not CL anymore. Though CL is still interesting to study for newcomers to Lisps.