Beyond Clojure
As mentioned earlier the nREPL protocol is language-agnostic and can be leveraged for many languages that have the ability to evaluate code at runtime.
Alternative Server Implementations
Those server implementations are developed and maintained by third-parties (as opposed to nREPL’s team), and their maturity might vary.
Certain nREPL clients may make Clojure-specific assumptions which will cause bugs when used with other servers, while other clients are designed with language-agnosticism in mind. Usually the nREPL servers would mention in their documentation which clients are known to work well with them. |
-
HyREPL - an nREPL for the Hy programming language
-
Chicken NREPL - an nREPL server for Chicken Scheme
-
cl-nrepl - an nREPL server for Common Lisp
-
cljs-noderepl - an nREPL server for ClojureScript running on Node.js
-
R-nREPL - an nREPL server for R
-
nREPL CLR - an nREPL server for ClojureCLR
-
Arcadia nREPL - an nREPL server implemented in C# for Arcadia.
As you can see nREPL has implementations for many popular Lisp dialects, but it’s certainly not limited to Lisp dialects.