ghostwheel
Hassle-free inline clojure.spec with semi-automatic generative testing and side effect detection (by gnl)
scope-capture
Project your Clojure(Script) REPL into the same context as your code when it ran (by vvvvalvalval)
ghostwheel | scope-capture | |
---|---|---|
2 | 9 | |
597 | 557 | |
- | - | |
4.0 | 0.0 | |
3 months ago | over 1 year ago | |
Clojure | Clojure | |
Eclipse Public License 2.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.
ghostwheel
Posts with mentions or reviews of ghostwheel.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-25.
-
fulcrologic/guardrails: spec as a loose type checker
big fan of fulcro logic, but isn’t this almost identical to https://github.com/gnl/ghostwheel ?
-
Python dataclass equivalent
if all you care about is information / documentation, and maybe validation, then spec or malli are fine. using spec during runtime to simulate a type system is a poor choice in most cases, because you are doing runtime type checking (something akin to dependent types or even esoteric contracts that are hard/impossible to express statically). There are some libs that help bolt a typed facade (using spec) onto the familiar defn / fn, https://github.com/gnl/ghostwheel https://github.com/Provisdom/defn-spec .
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 ghostwheel and scope-capture you can also consider the following projects:
truss - Assertions micro-library for Clojure/Script
clojure - The Clojure programming language
clj-otel - An idiomatic Clojure API for adding telemetry to your libraries and applications using OpenTelemetry.
flow-storm-debugger - A debugger for Clojure and ClojureScript with some unique features.
spec-tools - Clojure(Script) tools for clojure.spec
hashp - A better "prn" for debugging
kaocha - Full featured next gen Clojure test runner
test-refresh - Refreshes and reruns clojure.tests in your project.
rebel-readline - Terminal readline library for Clojure dialects
ghostwheel vs truss
scope-capture vs clojure
ghostwheel vs clj-otel
scope-capture vs flow-storm-debugger
ghostwheel vs spec-tools
scope-capture vs hashp
ghostwheel vs kaocha
scope-capture vs truss
ghostwheel vs test-refresh
scope-capture vs rebel-readline
ghostwheel vs hashp
scope-capture vs spec-tools