debug-repl
A Clojure debug repl as nrepl middleware (by gfredericks)
scope-capture
Project your Clojure(Script) REPL into the same context as your code when it ran (by vvvvalvalval)
debug-repl | scope-capture | |
---|---|---|
3 | 9 | |
99 | 557 | |
- | - | |
0.0 | 0.0 | |
over 3 years ago | over 1 year ago | |
Clojure | Clojure | |
Eclipse Public License 1.0 | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
debug-repl
Posts with mentions or reviews of debug-repl.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-07-06.
-
Debugging in Clojure
Cursive's debugger doesn't, but as one of the other posters mentioned there's a library called debug-repl which gives you this: https://github.com/gfredericks/debug-repl.
However, as I mentioned in the article, I've found it's usually better to use scope-capture than a debugger that pauses execution. The main reason is that I mainly work with Kafka Streams atm, and when the debugger pauses one thread other threads start timing out and throwing exceptions.
-
Let, try and other code blocks in the REPL
I think gary already did this with debug repl.
scope-capture
Posts with mentions or reviews of scope-capture.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-09-10.
-
What I Have Changed My Mind About in Software Development
Awesome tools.
Personally I can't imagine coding in clojure without scope capture
https://github.com/vvvvalvalval/scope-capture
- Automatic function argument / return value collection
- Using def within the threading macro. Is there a better way of doing this?
-
Python dataclass equivalent
I haven't tried it myself. I generally just use truss for runtime constraint checking. I use a modified version that integrates scope-capture. And malli validation for more complex cases, but I try to limit that. For me it is better to validate individual attributes as needed, vs validating an entire "type"/collection of attributes. So each function only cares about the attributes that it needs, and validates only as needed.
-
Love Clojure, challenged by discoverability
Use scope-capture to observe the actual data flowing through the system
-
Clojure unique way of debugging
Scope capture library https://github.com/vvvvalvalval/scope-capture automates this approach.
- The Clojure debbugging way with scope capture
-
Let, try and other code blocks in the REPL
Is anyone aware of any prior art along the lines of this? I've seen scope-capture but it's more about instrumenting existing programs than writing new ones interactively.
-
Data-Oriented programming and LISP
I am not advocating against the use of a compiler. I am going to illustrate how to reproduce the scope of a program and replay it in the REPL as it is done for instance in Clojure with scope-capture. In some use cases, I find this approach is simpler than using a debugger. This approach is possible only because the data is immutable.
What are some alternatives?
When comparing debug-repl and scope-capture you can also consider the following projects:
mulog - μ/log is a micro-logging library that logs events and data, not words!
clojure - The Clojure programming language