HN Hall of Fame Weekly email

Functional Programming Doesn't Work (and what to do about it)

prog21.dadgum.com Essays & writing Essays & articles Software engineering Candidate
Screenshot of prog21.dadgum.com captured 2026-07-20
Page preview · captured 2026-07-20

Resurfaced independently across 4 calendar years, with breakout response in 2 of them.

submissions
4
submitters
4
observed span
2009–2016
peak thread · 54 comments
71 pts
latest 20+ return · 2015-05-04
43 pts

Submission timeline

2007–2026

One slot for every year since HN launched. Height is that year's peak points; orange marks a 100+ point or 50+ comment breakout. Select a bar to open its strongest thread.

First comments on top threads

HN comment order

Functional programming works just fine. If you want to take two isolated functions and make them behave in some complicated manner depending on how often one or both are called, simply refactor them into the state monad. I.e., replace f: a -> a with f: a -> State a, and do the same for g. This is likely to break stuff. In C, good luck figuring out what might be broken as a result. In a pure functional language, you…

Imagine you've implemented a large program in a purely functional way. All the data is properly threaded in and out of functions, and there are no truly destructive updates to speak of. Now pick the two lowest-level and most isolated functions in the entire codebase. They're used all over the place, but are never called from the same modules. Now make these dependent on each other: function A behaves differently depending on the number of times function B has been…

Flagged for bait-y title. This is one of those articles that contradicts its title in the first few sentences. Better titles: "Purely functional programming doesn't work" or "sometimes functional programming doesn't work, but I'm still a functional programming advocate".

smt88·15-point thread·

The first top-level comment from each of the four biggest threads, in HN’s own order. Excerpts are shortened; open a comment for full context.

Breakout years
2

100+ points or 50+ comments

Total points
135

reference only — not used in Hall rules or ranking

Total comments
109

reference only — not used in Hall rules or ranking

Every submission

DateTitle as submittedByPointsComments
2009-12-29Functional Programming Doesn't Work (and what to do about it)blasdel60
2011-07-23Functional Programming Doesn't Work (and what to do about it)First breakout · Best threadColinWright7154
2015-05-04Functional Programming Doesn't Work (and what to do about it) (2009)Latest 20+ point returntosh4354
2016-09-15Functional Programming Doesn't Work (2009)pkd151