Instant Clojure Dialect REPLs¶
A single command, no prerequisites, a working local REPL.
The Makefile is hosted at clojure.cc/repl.mk.
It uses Makes to auto-install both the
dialect and its host language (Java, Go, Python, PHP, etc.) into a local
cache directory.
Your system stays clean.
Supported targets¶
| Name | Dialect | Host language |
|---|---|---|
bb |
Babashka | Native (GraalVM) |
clj |
Clojure | Java |
glj |
Glojure | Go |
gloat |
Gloat | Go |
hy |
Hy | Python |
janet |
Janet | C |
joker |
Joker | Go |
lein |
Leiningen | Java |
lg |
let-go | Go |
phel |
Phel | PHP |
Plus:
| Name | Purpose |
|---|---|
shell |
Start a shell with all of the above installed |
reset |
Delete the installation cache |
help |
Print the help text |
Examples¶
Launch a Glojure REPL:
Pin a Babashka version:
Or simplify with a shell alias:
alias repl='make -f <(curl -sL clojure.cc/repl.mk)'
repl clj
repl bb BABASHKA-VERSION=1.12.218
repl shell
How it works¶
The launcher is a small Makefile that:
- Clones makeplus/makes into a temp
directory (
$TMPDIR/clojure-cc-repl/). - Loads the language-specific module for the requested dialect.
- Downloads the host language toolchain (Java, Go, Python...).
- Downloads and installs the dialect.
- Drops you straight into its REPL.
Everything lives under that single temp directory and can be cleared with:
See makeplus/makes for the implementation details.
Want more dialects?¶
The launcher currently ships with the dialects listed above. If you'd like to see another Clojure dialect supported here, please open an issue on GitHub.