aboutsummaryrefslogtreecommitdiff
path: root/_posts/2020-07-18-monads-without-the-bullshit.md
diff options
context:
space:
mode:
authorMelody Horn <melody@boringcactus.com>2025-03-05 00:08:51 -0700
committerMelody Horn <melody@boringcactus.com>2025-03-05 00:08:51 -0700
commitbde494cb7361748a010aae9b1bdfa1e68fb42285 (patch)
tree83dc11185ff81ad34e5eb20e7467f5a8e0843cf6 /_posts/2020-07-18-monads-without-the-bullshit.md
parente1bafb686548140c91bb6953ab1deeb62141e0da (diff)
downloadboringcactus.com-bde494cb7361748a010aae9b1bdfa1e68fb42285.tar.gz
boringcactus.com-bde494cb7361748a010aae9b1bdfa1e68fb42285.zip
a good monads explanation has finally appeared, thank the heavensHEADmain
Diffstat (limited to '_posts/2020-07-18-monads-without-the-bullshit.md')
-rw-r--r--_posts/2020-07-18-monads-without-the-bullshit.md3
1 files changed, 3 insertions, 0 deletions
diff --git a/_posts/2020-07-18-monads-without-the-bullshit.md b/_posts/2020-07-18-monads-without-the-bullshit.md
index 59d39c3..0cef6cf 100644
--- a/_posts/2020-07-18-monads-without-the-bullshit.md
+++ b/_posts/2020-07-18-monads-without-the-bullshit.md
@@ -3,6 +3,9 @@ layout: default
title: "Monads, Explained Without Bullshit"
---
+*edit 2025-03-04*: this explanation is bad in the same way that most monad explanations are bad: it doesn’t address why the abstraction of “monad” is valuable.
+the first explainer i’ve seen that actually explains why it’s worth understanding is [Demystifying monads in Rust through property-based testing](https://sunshowers.io/posts/monads-through-pbt/); go read that instead.
+
there's a CS theory term, "monad," that has a reputation among extremely online programmers as being a really difficult to understand concept that nobody knows how to actually explain.
for a while, i thought that reputation was accurate; i tried like six times to understand what a monad is, and couldn't get anywhere.
but then a friend sent me [Philip Wadler's 1992 paper "Monads for functional programming"](https://homepages.inf.ed.ac.uk/wadler/papers/marktoberdorf/baastad.pdf) which turns out to be a really good explanation of what a monad is (in addition to a bunch of other stuff i don't care about).