On 29 July 2011 08:01, Michal B <mibu.cloj...@gmail.com> wrote: > Leiningen definitely alleviates the hairiness of library management. But I > wish people won't settle for a lein like solution for simple projects. As > much as it helps, it is still an unnecessary burden and an obstacle to > adoption, in my opinion and experience.
Why is it a burden? Let's take a step back and consider a simple library with a few lines of code and a couple of dependencies. With Leiningen or Cake, the process would be: 1. lein new foobar 2. cd foobar 3. Add :dependencies to project.clj 4. Add :main namespace to project.clj 4. Write the code 5. lein run I'm having trouble seeing how this could be much simpler, unless the dependencies were somehow resolved automatically. So what about if we forgo a build tool? Then the process would be: 1. mkdir foobar 2. cd foobar 3. Download dependencies manually as jars, including Clojure itself 4. mkdir lib 5. Place all dependencies in lib 6. mkdir -p src/foobar 7. Write code 8. java -cp 'lib/*.jar:src' foobar.core I'm not seeing how this is any simpler. The act of going around and downloading dependencies manually also seems particularly time consuming. And once you've written your application, how do you publish it? With Leiningen and the Clojars plugin, it's: 1. lein push But manually, it would be: 1. cd src 2. jar cf foobar-1.0.0.jar */*.clj 3. cd .. 4. mv src/foobar-1.0.0.jar lib 5. cd lib 6. zip cf foobar-1.0.0-standalone.zip *.jar 7. Upload resulting zip file to your project website As far as I can see, even with the simplest of projects, there is no reason not to use Cake or Leiningen. You'll have to do much more work without them. - James -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en