Clojure Debugger?(deliberate-software.com)
deliberate-software.com
Clojure Debugger?
http://deliberate-software.com/clojure-debugger/
4 comments
I keep trying to learn how to use CCW for the debugger, but I've been using Emacs too long. Realistically we should improve the nrepl tooling so that everybody can use the editor they're happy with.
I still remember how, when learning common lisp, I kept looking for how to enable a breakpoint in my code. I wanted a conditional breakpoint that would fire under specific conditions. I was really surprised to learn that you just modify your code and insert a (when something (break)) -- and that (break) function call lands you in a debugger.
I found the elegance and convenience very impressive.
Clojure, unfortunately, is hard to debug, no matter how many trace macros one uses. In a long-running application I would much rather land in a debugger, inspect locals, think about what to do next, walk the frames on the stack, etc.
I found the elegance and convenience very impressive.
Clojure, unfortunately, is hard to debug, no matter how many trace macros one uses. In a long-running application I would much rather land in a debugger, inspect locals, think about what to do next, walk the frames on the stack, etc.
Tracing functions was available in Lisp shortly after the big flood, when mankind killed the last dinosaurs.
You are absolutely right, it was just my first exposure it, and I wanted to share it with everyone who didn't already know about it. No disrespect intended to the Lisp's that already had it.
> Once in a while, I have felt the need to find out exactly what was going on at a certain point, and had to awkwardly put in (do (pprint x) x) statements everywhere.
Use this:
https://github.com/dgrnbrg/spyscope
Less awkward and more informative!
Use this:
https://github.com/dgrnbrg/spyscope
Less awkward and more informative!
Timbre has also a pretty useful spy function for that purpose.
http://code.google.com/p/counterclockwise/