I understand that one of the biggest things most people love about lisp is how much control you have over every single aspect of it and that contributes to most lisps not having a Cargo, per se. The user crafting their own build system __is__ part of the intended experience.
But, sometimes I just want to `lisp create my-project` and `cd my-project && lisp repl`. Most importantly, I want to `lisp add a-dependency` without it going to some global directory where conflicts can happen.
I am intentionally not mentioning Clojure here because I have been playing with it for a long time and have found that it's not exactly what i'm looking for. Mainly because of how there is more than 1 way of structuring your project (namely leiningen, deps.edn, and friends), and even if you get past that point, i find it difficult to enjoy the command line arguments of these tools (notice how the java creeps into the experience when you `-A:test -Spath`.
What I want is a lisp with a compiler/interpreter, and a package manager/build system that makes use of said compiler/interpreter to work on a project using a standardized project structure.
Anyway, I want to know if what I'm looking for exists, or if i'm misunderstanding the beauty in the way things are.
My whole workflow with Common Lisp is playing around with the interpreter in search of a solution, then write down that solution in code. Quicklisp is more than enough for that. If I need to pin down a library, I'd just download it and vendor it in the project. And most people don't need that much libraries as the language is quite flexible and you can get it very close to the problem domain.
> What I want is a lisp with a compiler/interpreter, and a package manager/build system that makes use of said compiler/interpreter to work on a project using a standardized project structure.
What you're asking is the same as Docker for Linux, but if Linux was more homogeneous and running a single program. Docker wouldn't be so useful and people would just distribute VM snapshots or Ansible scripts. Which you do in Lisp.
It comes with a build tool `jpm` which installs dependencies globally by default, but you can have it be installed in your project folder as well.