graalvm-clojure
zinc
graalvm-clojure | zinc | |
---|---|---|
7 | 1 | |
487 | - | |
0.4% | - | |
5.4 | - | |
5 months ago | - | |
Clojure | ||
Apache License 2.0 | - |
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.
graalvm-clojure
-
Faster load times for production deployments
Using graalvm when possible. More details (finding out if possible for your project) here: https://github.com/clj-easy/graalvm-clojure/tree/master/
- Loopr: A Loop/Reduction Macro for Clojure
- Joker
- What do you think about Racket, particularly as it compares with Clojure?
-
Building A Fast Command Line App With Clojure CLI (tools.deps) and GraalVM
I haven't yet, no, but I've just barely gotten started. There's a repo here that tracks compatibility of several Clojure libraries: https://github.com/BrunoBonacci/graalvm-clojure
-
Building A Fast Command Line App With Clojure
Even though there's no batteries-included way to manage Clojure projects, the community has put together a lot of great tools and guides the cover all the bases. The community seems to be converging around the official Clojure CLI and associated tooling as the preferred way to manage Clojure projects. It's extremely well designed, like most things Clojure, but, also like most things Clojure, it's very bare-bones. It's not an all-in-one command-line utility you can use to manage your whole project, like the angular or rails CLIs (which I didn't appreciate nearly enough in my former life 😢). You need to configure the Clojure CLI itself for it to be useful, but luckily that's really straightforward to do. What follows are the steps I did to make a new skeleton command-line app in Clojure. It follows the steps from this great guide, but I included the actual commands here because I use the Clojure CLI (clj) instead of lein to run things.
zinc
-
Loopr: A Loop/Reduction Macro for Clojure
I invite you to try it. Put together a modest CLI that does SQLite, some network calls, and unzips files. ( https://github.com/djhaskin987/zinc ). Using native-image with any reasonable set of dependencies like this is *horrendous*. Just because you can doesn't mean it's tractable. I spent 10% of my time writing the tool and 90% of it trying to get it to compile. Absolutely the worst experience trying to get something to build in my life, and I'm a devops engineer. Building and shipping code is my thing.
What are some alternatives?
joker - Small Clojure interpreter, linter and formatter.
sqlite-graalvm-sample - A sample compiling an app that uses sqlite with GraalVM
immer - Postmodern immutable and persistent data structures for C++ — value semantics at scale
clasp - clasp Common Lisp environment
clj-new - Generate new projects based on clj, Boot, or Leiningen Templates!
Carp - A statically typed lisp, without a GC, for real-time applications.
jank - A Clojure dialect hosted on LLVM with native C++ interop
babashka - Native, fast starting Clojure interpreter for scripting
graal-docs - Scripts and tips to get Clojure latest working with GraalVM latest
lilyvm - A small VM for Lisps written in C
Wren - The Wren Programming Language. Wren is a small, fast, class-based concurrent scripting language.
park-lang - Park programming language