4 ms·
Imperative programming is intuitively literal in a way that formal functional programming in something like Haskell isn't, because you have to understand some n
by caconym_ 5y ago
Imperative programming is intuitively literal in a way that formal functional programming in something like Haskell isn't, because you have to understand some nontrivial abstract mathematical formalism to build nontrivial programs.
I think a lot of programmers, including me, have a gift for the former kind of thinking but not the latter. So we tend to struggle with abstractions like monads, because we're looking for some literal ground truth about them that doesn't really exist.
Learning Haskell to the point where I could use it for practical work was one of the best things I ever did for my programming brain. I'd recommend it to anybody.