3 ms·
It's like I accidentally stuck my hand in a running blender and someone asks whether I'm angry because of the noise of the motor or because the buttons aren't a
by 88e282102ae2e5b 10y ago
It's like I accidentally stuck my hand in a running blender and someone asks whether I'm angry because of the noise of the motor or because the buttons aren't arranged in a reasonable order.
I tried learning about Haskell just so I could understand a flurry of articles I came across that were trying to explain monads. But mostly I found super abstract notation, something about bind and unit and >>=, and I came away just feeling dumb. I gave up pretty quickly, but to be fair I suppose I wasn't super motivated to work through it.
Later, I learned Rust just for fun. Options? Sounds like a good way to express uncertainty about a function call. Oh, and you can compose it with other Options using this function called and_then(), and things will short-circuit if they fail. Neat!
A year later I find out I had been productively using monads the whole time without even knowing it. It's so frustrating knowing how easy it could have been to learn this concept explicitly the first time around.