# OCaml

Hacker Approved page: https://hackerapproved.com/p/ocaml/

149 people recommended OCaml in Hacker News comments, 49 had mixed feelings and 49 criticized it, November 2025 to October 2026. It was recommended in 12 of 12 months, in 113 threads. It meets the Hacker Approved badge rule.

**Verdict:** Recommended for its expressive, safe type system, fast compiler, readable syntax and pattern matching; the common caveat is a small ecosystem with thin libraries, stdlib and tooling.

Summary written by Claude from 50 comments. It was written before the November 2026 recount, and 49 of those comments still count. Claude agents reviewed it against the quotes on 2 Nov 2026.

## Why people recommend it

- Expressive, safe type system (8 comments in the sample): "ocaml has excellent compilation speed, and in my experience the code is very maintainable due to the module and type systems" ([source](https://news.ycombinator.com/item?id=49158446)) "it already had better static analysis and correctness on object oriented stuff than what Java struggles to approach today" ([source](https://news.ycombinator.com/item?id=46044732)) "the benefits of functional programming and the type guarantees that it's ilk provides cannot be understated" ([source](https://news.ycombinator.com/item?id=45851211))
- Clean, readable syntax (4 comments in the sample): "For me, the match syntax, the function signatures, the |> operator, and OCaml’s approach to shadowing are all very readable" ([source](https://news.ycombinator.com/item?id=46233373)) "I find its lack of syntax sugar makes it easy to read nearly any OCaml code I come across in the wild" ([source](https://news.ycombinator.com/item?id=46350870)) "ML syntax has been designed to teach programming to fresh students with just a background in math." ([source](https://news.ycombinator.com/item?id=45815501))
- Fast compilation (3 comments in the sample): "OCaml's only major advantage IMO is compile time. That doesn't seem compelling enough to put up with the downsides to me." ([source](https://news.ycombinator.com/item?id=45846308)) "got rid of its global lock, got a really fast-compiling native toolchain with stable and improving editor tooling" ([source](https://news.ycombinator.com/item?id=45849529)) "I miss from OCaml: faster compile times, non-recursive `let` by default, polymorphic variants, labeled arguments" ([source](https://news.ycombinator.com/item?id=45874977))
- Great for learning programming (2 comments in the sample): "if your goal is to learn a language that will genuinely improve your programming skills, I’d say OCaml is one of the best options" ([source](https://news.ycombinator.com/item?id=46233414)) "OCaml is easy and flexible which makes it good imo as a door towards the more formal part of comp sci" ([source](https://news.ycombinator.com/item?id=49579803))

## What people warn about

- Small ecosystem, few libraries (3 comments in the sample): "Possibly the best language (alongside Haskell) if you need pattern-matching. Not quite as good if you need lots of libraries" ([source](https://news.ycombinator.com/item?id=45948652)) "None of my day jobs have ever been a situation where the smaller ecosystem and community of ocaml was offset by anything ocaml did better" ([source](https://news.ycombinator.com/item?id=45852028)) "anyone trying to learn Haskell, OCaml, or other language with minimal/"batteries depleted" stdlib will suffer." ([source](https://news.ycombinator.com/item?id=46098129))
- Build tooling problems (3 comments in the sample): "opam doesn't produce proper lock files (only version numbers) and it seemed silly to not be able to even include another file" ([source](https://news.ycombinator.com/item?id=46258962)) "Yes, the syntax is relatively easy to learn. But when I look at what Jane St etc have created for libs, the tooling, etc." ([source](https://news.ycombinator.com/item?id=45815603)) "ran into a bunch of problems with build tooling, standard library, syntax noise, ideological/unhelpful community" ([source](https://news.ycombinator.com/item?id=49661817))
- Clunky imperative code (2 comments in the sample): "being constrained to pattern matching in places where imperative programming would be more natural" ([source](https://news.ycombinator.com/item?id=45870101)) "writing imperative code in OCaml feels quite right. Maybe it's just me, but it always feels significantly clunkier than the functional equivalent" ([source](https://news.ycombinator.com/item?id=45856412))
- Risky multicore parallelism (2 comments in the sample): "I do think maybe it should have stayed single threaded, or only allowed parallel iteration/loopsbfor fine grained parallelism." ([source](https://news.ycombinator.com/item?id=45811167)) "In ocaml5 if you use domain, it is down to experience skill, and some luck to be sure you used atomic when necessary." ([source](https://news.ycombinator.com/item?id=45846910))

## Other programming languages people recommend

- [Rust](https://hackerapproved.com/p/rust/): 1346 recommend, 468 mixed, 715 criticize
- [Go](https://hackerapproved.com/p/go-programming-language/): 855 recommend, 270 mixed, 513 criticize
- [Python](https://hackerapproved.com/p/python/): 683 recommend, 261 mixed, 719 criticize
- [Zig](https://hackerapproved.com/p/zig/): 454 recommend, 181 mixed, 358 criticize

## The badge

A product earns the Hacker Approved badge when at least 10 people recommend it, recommenders outnumber critics at least 2 to 1 (mixed feelings count toward neither side), it was recommended in at least 4 of the 12 months and in at least 5 different threads, and no single thread supplies more than half of the people who recommend it. Health and money products are never badged.

## Cite as

Hacker Approved, "OCaml", https://hackerapproved.com/p/ocaml/ (149 recommend, 49 mixed, 49 criticize; Hacker News comments, November 2025 to October 2026).

Counts updated 2 Nov 2026, with data through October 31, 2026.
