# Common Lisp

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

**Verdict:** Recommended for its live REPL and debugger, fast native code via SBCL, flexible multi-paradigm design and a stable standard where decades-old code still runs; critics cite thin tooling and ecosystem.

## Why people recommend it

- Live debugging, restarts and REPL (5 comments): "it has by far the best OOB debuggability/introspectability (especially when using SBCL) out of any practical language" ([source](https://news.ycombinator.com/item?id=49397840)) "In Common Lisp your program won’t crash, it’ll stop and open a debugger with the whole stack and all the variables." ([source](https://news.ycombinator.com/item?id=49974126)) "Conditions and restarts and general debugging and repair of the live system, fast startup, native execution speeds" ([source](https://news.ycombinator.com/item?id=49091256))
- Flexible, expressive, multi-paradigm (5 comments): "It supports basically all styles which makes it wonderfully useful in whatever domain you happen to find yourself in." ([source](https://news.ycombinator.com/item?id=45794215)) "I can name an absolute handful of languages I've used that have that flexibility. Common LISP comes to mind." ([source](https://news.ycombinator.com/item?id=46602579)) "Common Lisp is unopinionated, multi-paradigm, but at its core is mutation-friendly, compilation friendly" ([source](https://news.ycombinator.com/item?id=49974649))
- Stable standard; old code runs (5 comments): "a large amount of code written for CL pre-standardization still runs without alteration or with minimal updates" ([source](https://news.ycombinator.com/item?id=48949294)) "the common Lisp ANSI specification is just awesome, free and locally installable and browsable from Emacs" ([source](https://news.ycombinator.com/item?id=46174342)) "have well-specified standards, have stood the test of time and will still be around for decades to come" ([source](https://news.ycombinator.com/item?id=45792885))
- Fast native performance with SBCL (4 comments): "As a GC language Common Lisp is slow as molasses. However, in the realm of languages which are slow as molasses it's got quite acceptable performance." ([source](https://news.ycombinator.com/item?id=45783242)) "You could build systems with much better devx and ux and an order of maginitude less memory usage and wasted CPU cycles." ([source](https://news.ycombinator.com/item?id=47247466)) "Common Lisp (at least SBCL, which may be the most prolific implementation) is blazingly, scorchingly, stupendously fast." ([source](https://news.ycombinator.com/item?id=45986094))

## What people warn about

- Unopinionated; ad-hoc macro dialects (2 comments): "Lisp is the most unopinionated language there is, therefore it is the worst in terms of lack of decisions encoded in its tooling." ([source](https://news.ycombinator.com/item?id=49974768)) "Each programmer invents their own ad-hoc, undocumented, barely working language in the form of those macros." ([source](https://news.ycombinator.com/item?id=49976009))
- Limited type system and generics (2 comments): "None of the functions operating on sequences are generic, so you cannot create your own type and do a `defmethod` and have them automatically adapt to it." ([source](https://news.ycombinator.com/item?id=48861281)) "CL has a pretty anemic type system, but at least it does gradual without having to resort to this." ([source](https://news.ycombinator.com/item?id=47818752))
- Weak library ecosystem and tooling (2 comments): "Lisp is the most unopinionated language there is, therefore it is the worst in terms of lack of decisions encoded in its tooling." ([source](https://news.ycombinator.com/item?id=49974768)) "the state of the library ecosystem, documentation, toolchain, and IDEs around them just aren't satisfactory to me" ([source](https://news.ycombinator.com/item?id=46774233))
- Awkward fit for application code (3 comments): "in Common Lisp (I mean just the stuff in the CL spec, no ad-hoc extensions allowed) you can't write anything resembling an OS" ([source](https://news.ycombinator.com/item?id=48854423)) "CLI, TUI, and desktop GUI apps are basically the only kinds of apps that benefit from CL and can live with its shortcomings" ([source](https://news.ycombinator.com/item?id=49090365)) "Common Lisp often feels designed primarily to implement Common Lisp, rather than to write useful application code." ([source](https://news.ycombinator.com/item?id=49880767))

## 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, "Common Lisp", https://hackerapproved.com/p/common-lisp/ (counts from 1,795,640 Hacker News comments, November 2025 to November 2026).
