However, tools.deps.alpha doesn't restrict itself to a Maven-artifact-only dependency system. It supports an open system of coordinate and provider types of which Maven is one, but also local (no-artifact) dependencies, local jars, and eventually others as well (like using projects directly from Github). All of that vision is not done yet but it will enable many new capabilities.
Clojure is a language that runs code from Clojure source files. It does not inherently require "building" or "deploying" anything. Those are useful tools to interoperate with the Java ecosystem, but we should not limit ourselves to only that means of program building.
$ brew install leiningen
$ lein repl
That's literally all it took.And then you learn that not everyone use leiningen ... and things become a bit more confusing than necessary for some people, especially beginners
In fact it used to find leiningen instead of clojure; possibly clojure didn't exist as a brew tap before.
That isn't always trivial.
I’m not sure I understood your comment. Parent’s code block has two lines: the first one installs Leiningen; the second one starts its repl.
This is just another layer in the toolchain to contend with, and since Clojure is built on the JVM, the toolchain is already quite bloated.
or for windows: https://raw.githubusercontent.com/technomancy/leiningen/stab...
I like to know how a toolchain works, how libraries are linked, etc. I don't want to rely on "magic" that can be incompatible with alternative "magic".
Clojure didn't provide a good low-level interface, and I ended up giving up on it for that reason alone.
Now that there are some minimal command-line tools, I think I'll give it another look.
There's not much documentation for doing that stuff though, because (almost) nobody wants to do that. It's painful.
That is what I encountered when I first tried to learn Clojure.
I essentially gave up at that point. Installing the JRE is enough of a pain on its own.
Mind expanding on that? My 4-years experience using Leiningen has been great so far.
I must note, I like clojure for its cross vm support. One lisp to rule them all.