Debug Clojure
Most functions in Clojure are easily explored using REPL driven development, so debugging is not usually the first tool to reach for.
Tools for inspecting the results of functions are used to understand the shape and values of the data returned from expressions and help identify issues. Data inspectors are especially useful as the size and complexity of the results data grows. The more complex custom code becomes, the greater the need for debugging tools
Cider provides a data inspector to navigate nested data structures and page through results.
Cider also provides a debug tool to instrument a function and step through breakpoints to see what each part of that function is doing.
Tool | Description |
---|---|
cider inspector | navigate through data structures, paging through large data |
data inspector: reveal | visualize and navigate through data structures |
data inspector: portal | visualize and navigate through data structures |
cider debug | add breakpoints and step through values and expressions |
sayid debug | debug the whole project (must compile) and profile project |