Get a Clojure repl in your JVM project.
Depend on so.dang.cool:clobar
from Maven Central or Clojars.
import so.dang.cool.clobar.Clobar;
// In some scope...
Clobar.pry(interestingVariable);
Why not use a debugger?
Yes, use a debugger, this is not a debugger replacement. Sometimes it's more productive to get an instance of something to directly manipulate, inspect, call methods, etc.
The experience is not polished. I have a number of open questions:
- Can we get better handling for Java objects?
- Can we load the full runtime context? (Example: Load all imports and variables in scope.)
- Can we do this with other JVM shells? Especially
jshell
, but also the Kotlin/Scala/Groovy equivalents.
A 2023 side quest of J.R. Hill