There are a bunch of Common Lisp implementations which are smaller (CLISP), can create small applications (Lispworks), can be embedded (ECL) or can compile to smallish C code (mocl).
I think the main problem is there's too many implementations of the same thing in CL, so devs basically have to agree on a very specific subset of tools for every project, which adds a fair bit of overhead.
https://roswell.github.io/ https://github.com/fukamachi/woo https://github.com/fukamachi/ningle
p.s. Not the author, but a big fan.
I personally wonder if CL's "computer program as an image" instead of the Unix process-oriented architecture will see a comeback in this modern era of virtualization and rump kernels and containers. In theory a Docker image for an SBCL program would be just the Lisp image itself plus the small handful of standard POSIX libraries on which the Linux version of SBCL depends (e.g., libc, libm, libpthread, etc.)
https://github.com/bakpakin/Fennel
It's a lua based lisp. Technomancy of clojure fame has taken a shine to it and become a large contributor.
I'm not familiar with this. Anyone care to explain?
That's a good example. When an error is signaled you're able to modify the program (via recompilation of functions, changing of values) and restart at a point you select. There are other things you can do, but this is a particularly powerful option.
[0] https://www.janet-lang.org