Our great sponsors
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.
Racket for Computer Music?
7 projects | reddit.com/r/Racket | 13 Jun 2022
I don’t know much about music but rsc looks like a good option and exists for Racket and Chez: https://github.com/khafatech/rsc3/blob/master/README.md
Why I decided to learn (and teach) Clojure
5 projects | dev.to | 20 Mar 2023
Lisp is not a programming language, but a family of languages with many dialects. The most famous dialects include Common Lisp, Clojure, Scheme and Racket. So after deciding that I was going to learn Lisp, I had to choose one of its dialects.
Clojure Turns 15 panel discussion video
24 projects | news.ycombinator.com | 13 Feb 2023
I thought you might be trolling. But then when I looked at the Clojure repo on Github https://github.com/clojure/clojure the last commit was 2 months back. There is some merit in your arguments.
Advent of Clojure - looking for feedback
5 projects | reddit.com/r/Clojure | 12 Jan 2023
1 - partial is defining a new function that ignores the type hints from func, and would introduce boxing. It also can introduce a performance hit for (remaining) argument arities > 3, since it automatically invokes a varargs variant instead of providing a concrete arity. With the varargs version, in profiling you may see RestFn showing up on hot paths, which is the varargs implementation having to munge seqs every invocation instead of being able to use concrete args matching discrete arities. Depending on the frequency of invocation this may impact performance.
The Holy Trinity of Clojure
7 projects | news.ycombinator.com | 12 Dec 2022
I love Clojure, but the Java source is oddly formatted which I never understood: https://github.com/clojure/clojure/blob/527b330045ef35b47a96...
Is there any currently working way to import a local Java .jar library into a Clojure project?
3 projects | reddit.com/r/Clojure | 1 Dec 2022
I'm using Leiningen to set up the project, so it seems that the guide on clojure.org does not apply. And in the Leiningen Docs I couldn't find anything...
Is Clojure suitable for my use cases?
10 projects | reddit.com/r/Clojure | 21 Oct 2022
You can see all the changes (and two security fixes) for Clojure versions here: https://github.com/clojure/clojure/blob/master/changes.md
Ask HN: Is Clojure Dead?
6 projects | news.ycombinator.com | 29 Sep 2022
A language without operators
4 projects | reddit.com/r/ProgrammingLanguages | 17 Aug 2022
Lisp and Forth and all of their derivatives like Clojure and Factor:
Clojure needs a Rails, but not for the reason you think
2 projects | reddit.com/r/Clojure | 1 Aug 2022
clojure.math is primarily a wrapper for java.lang.Math. I wrote some code to generate it from the Java reflection info (~100 LOC). And then I wrote some customization to the automatic stuff to make it how we wanted it (~150 LOC). The work doing these parts of it were probably a few days. Code here: https://github.com/clojure/clojure/blob/master/codegen/gen_math.clj
Ask HN: What are some 'cool' but obscure data structures you know about?
54 projects | news.ycombinator.com | 21 Jul 2022
Huet's zipper. https://en.wikipedia.org/wiki/Zipper_(data_structure).
One zipper value represents a regular tree of data, but from the perspective of the "current position". There are traversal operations that take a zipper value and return the same tree from the perspective of an element above/beside/below the current position, and there are operations that return the same structure but with the current element changed, or items deleted or inserted.
Huet's paper is an easy read if you've been exposed to OCaml or similar languages: https://www.st.cs.uni-saarland.de/edu/seminare/2005/advanced... . His "returned glove" metaphor is what made it click for me.
Clojure includes an implementation of Huet's zippers https://github.com/clojure/clojure/blob/master/src/clj/cloju... that is <300 lines of code. It's very, very clever and broadly useful for dealing with XML or other nested data structures.
What are some alternatives?
racket - The Racket repository
malli - High-performance Data-Driven Data Specification Library for Clojure/Script.
criterium - Benchmarking library for clojure
scala - Scala 2 compiler and standard library. For bugs, see scala/bug
nbb - Scripting in Clojure on Node.js using SCI
scope-capture - Project your Clojure(Script) REPL into the same context as your code when it ran
rust - Empowering everyone to build reliable and efficient software.
trufflesqueak - A Squeak/Smalltalk VM and Polyglot Programming Environment for the GraalVM.
Fulguris - ⚡Sparkling Android Web Browser⚡
Elixir - Elixir is a dynamic, functional language designed for building scalable and maintainable applications
hissp - It's Python with a Lissp.
ClojureDart - A port of Clojure that compiles to Dart