Well, that's the first time side effects in Haskell made sense to me. Well done. Not that I've ever seriously tried to learn Haskell, but in the past every time I've lazily come across an article about it it's always seemed like a bizarre confusing world, even though I know how functional programming (in the sense of purity) works. Now there's just one thing missing. We all know what this style of programming is. It'…
If people stuck to just explaining the IO monad specifically, which is a lot like async code with callbacks, then things would be better.
I wrote about this a few years ago: https://two-wrongs.com/the-what-are-monads-fallacy