# Clojure

255 Hacker News commenters recommended Clojure and 66 criticized it, November 2025 to November 2026. It was recommended in 12 of 13 months; owners who said how long report a median of 10 years (33 owners). It meets the Hacker Approved badge rule.

**Verdict:** Recommended for REPL-driven live development, immutable-first data handling and a remarkably stable core; critics cite a steep learning curve, a small community with abandoned libraries, and poor error messages.

## Why people recommend it

- REPL-driven live development (8 comments): "Lisp/Clojure repl allowing you to compile tiny parts of your program inside your running program is incredible for your feedback/iteration loop." ([source](https://news.ycombinator.com/item?id=48868867)) "with the nREPL feature and letting the AI Agent jack in, Clojure may actually be the most well positioned language for this use case" ([source](https://news.ycombinator.com/item?id=47803809)) "in my experience Clojure has an ecosystem where there it is very easy to transition from exploring/playing with data at the REPL" ([source](https://news.ycombinator.com/item?id=47512550))
- Immutable, data-oriented design (7 comments): "If there is one thing I love about Clojure and Common Lisp, it’s that you’re not supposed to care about the shape of a complex data" ([source](https://news.ycombinator.com/item?id=48249379)) "Clojure's data processing abilities, particularly around immutable data, make a compelling case in spite of the syntax" ([source](https://news.ycombinator.com/item?id=47511247)) "adding a functional first approach with emphasis on data structures, where using the right algorithms comes naturally" ([source](https://news.ycombinator.com/item?id=47459716))
- Stable, backwards-compatible core (4 comments): "it shows in the design quality as even now, almost two decades later, the language has changed surprisingly little and is still really good" ([source](https://news.ycombinator.com/item?id=48457590)) "The very good backwards compatibility is attractive but as the result of the small community, there's also a lot of abandoned packages" ([source](https://news.ycombinator.com/item?id=47584631)) "the core language/libraries are unusually stable and widely used and so feature-complete there's basically no hallucinations" ([source](https://news.ycombinator.com/item?id=46525621))
- Works well with AI agents (4 comments): "LLM stops guessing and starts empirically analyzing current state of things and produces working solution faster, costing far less tokens" ([source](https://news.ycombinator.com/item?id=48850430)) "with the nREPL feature and letting the AI Agent jack in, Clojure may actually be the most well positioned language for this use case" ([source](https://news.ycombinator.com/item?id=47803809)) "the core language/libraries are unusually stable and widely used and so feature-complete there's basically no hallucinations" ([source](https://news.ycombinator.com/item?id=46525621))

## What people warn about

- Small community, stagnant ecosystem (4 comments): "The very good backwards compatibility is attractive but as the result of the small community, there's also a lot of abandoned packages" ([source](https://news.ycombinator.com/item?id=47584631)) "That is because Clojure is done, there is hardly anything being done other than probably what matters to NuBank and Datomic mostly." ([source](https://news.ycombinator.com/item?id=47531586)) "It's such an unhealthy attitude to have as a community and it holds it back from actually clearly seeing what the issues are" ([source](https://news.ycombinator.com/item?id=47616413))
- Steep learning curve and syntax (4 comments): "While it's amazing once you've learned it, and you're slurp/barfing while making huge structural edits to your code, it's a tall order." ([source](https://news.ycombinator.com/item?id=47616435)) "if you're clojure (cough common lisps) or scala (cough OCAML/Haskell) it seems like you're making life hard for no reason" ([source](https://news.ycombinator.com/item?id=49146289)) "Clojure's data processing abilities, particularly around immutable data, make a compelling case in spite of the syntax" ([source](https://news.ycombinator.com/item?id=47511247))
- Dynamic maps and nil cause bugs (4 comments): "Biggest limit I encounter is that Clojure doesn't provide any mean to identify areas in my code that are not pure." ([source](https://news.ycombinator.com/item?id=47961572)) "while nil is a perfectly reasonable default 9/10 times that 1/10 happens often enough and causes major problems" ([source](https://news.ycombinator.com/item?id=48807189)) "found it so frustrating because, following the idiomatic style, pathways passed maps around, added keys to maps" ([source](https://news.ycombinator.com/item?id=47588005))
- Weak error messages and debugging (2 comments): "The core team has never meaningfully addressed the terrible error messages the language spits out because they are able to decode the problem themselves." ([source](https://news.ycombinator.com/item?id=46186871)) "Clojure REPL experience is pretty primitive though, you don’t have a step debugger or something like the conditions system" ([source](https://news.ycombinator.com/item?id=46259491))

## Alternatives hackers recommend

- [Rust](https://hackerapproved.com/p/rust.md): 2039 recommend
- [Go](https://hackerapproved.com/p/go-programming-language.md): 1254 recommend
- [Python](https://hackerapproved.com/p/python.md): 1067 recommend
- [Zig](https://hackerapproved.com/p/zig.md): 743 recommend
- [TypeScript](https://hackerapproved.com/p/typescript.md): 574 recommend

## Cite as

Hacker Approved, "Clojure", https://hackerapproved.com/p/clojure/ (counts from 1,795,640 Hacker News comments, November 2025 to November 2026).
