I'm working on debugger expression evaluation for Clojure code. I have it almost working, but I still have a few questions:
- When an expression is used for a breakpoint condition, it must return a primitive boolean value. Clojure always returns objects from its functions, so primitives are always returned boxed. I've hacked this in my Evaluator right now to always unbox the return value if it's a Boolean, but it would be nice to be able to tell if this was expected. Is there any way to tell that the expression is expected to return a boolean? Alternatively, is there any way to tell that the expression is a breakpoint condition?
- For Clojure stack frames, I'd like to customise some aspects of the presentation. I'd like to customise the stack frame presentation in the Frames tab, and I'd like to customise the display of the variable names (not the values) in the Variables tab since Clojure munges variable names. Is this possible?