clojure

Ingy döt Net 2026-05-23T18:18:10.218449Z

Here's a zero-dep (no dialect binary or backing language required) way to try 10 different Clojure dialects' repls, with one simple command:

$ make -f <(curl -sL gloathub.org/repl.mk) help | head

Instant Clojure Dialect REPLs!

Start an auto-installed Clojure dialect CLI repl client:

  make -f <(curl -sL gloathub.org/repl) 
  make -f <(curl -sL gloathub.org/repl)  -VERSION=1.2.3

Names of repl targets and their VERSION variables:

$ make -f <(curl -sL gloathub.org/repl.mk) bb
* Installing 'bb' locally
curl+  > /tmp/gloathub-repl/local/cache/babashka-1.12.218-linux-amd64-static.tar.gz
Cached: /home/ingy/.cache/makes/github.com__babashka__babashka__releases__download__v1.12.218__babashka-1.12.218-linux-amd64-static.tar.gz
tar -C /tmp/gloathub-repl/local/cache -xf /tmp/gloathub-repl/local/cache/babashka-1.12.218-linux-amd64-static.tar.gz
[[ -e /tmp/gloathub-repl/local/cache/bb ]]
mv /tmp/gloathub-repl/local/cache/bb /tmp/gloathub-repl/local/bin/
touch /tmp/gloathub-repl/local/bin/bb

bb
Babashka v1.12.218
Type :repl/help for help
user=>
Currently supports: bb, clj, glj, gloat, hy, janet, joker, lein, lg (let-go) and phel.

8
👀 1
Ingy döt Net 2026-05-23T18:20:32.987309Z

Linux and macOS supported (and tested).

Ingy döt Net 2026-05-23T18:22:10.280949Z

$ echo $OSTYPE
darwin23.0
$ make -f <(curl -sL gloathub.org/repl.mk) joker
joker
Welcome to joker v1.7.2. Use '(exit)', EOF (Ctrl-D), or SIGINT (Ctrl-C) to exit.
user=> *joker-version*
{:major 1, :minor 7, :incremental 1}
user=>
🙂

neumann 2026-05-25T20:08:54.956409Z

Nifty. Is this in the GloatHub docs somewhere?

Ingy döt Net 2026-05-25T20:09:41.707579Z

not yet.

Ingy döt Net 2026-05-25T20:10:45.880229Z

it's not really gloat related per se. I just needed a good place to host the http://repl.mk file 🙂

Ingy döt Net 2026-05-25T20:11:45.011989Z

if some more clojure central site wanted to host it, I'd be glad to help

neumann 2026-05-25T20:20:32.771799Z

Yeah, I can see how it's not gloat related. We don't really have a "central" site that is devoted to cross-dialect concerns either.

Ingy döt Net 2026-05-24T18:47:54.062239Z

Just added janet support.

make -f <(curl -sL gloathub.org/repl.mk) janet
Also try:
make -f <(curl -sL gloathub.org/repl.mk) shell
to start a shell with all the dialects installed and in your PATH.

Ingy döt Net 2026-05-24T19:34:44.733589Z

Note, the <(...) process substitution is available in bash and zsh. If you use fish or something else, try:

bash -c 'make -f <(curl -sL ) janet'