Re:Why Static Languages Suffer from Complexity (2022)
by c_crank on Wednesday August 09, 2023 @08:11PM
(#37070130)
Would there be so many ineffective tutorials and bad analogies if having to use monads really wasn't a problem?
[ Parent
| on HN ]
Re:Why Static Languages Suffer from Complexity (2022)
by ParetoOptimal on Wednesday August 09, 2023 @10:43PM
(#37071282)
Surely people never overcomplicate simple things, right?
:)
Re:Why Static Languages Suffer from Complexity (2022)
by empath75 on Wednesday August 09, 2023 @10:44PM
(#37071294)
Weirdly once i stopped trying to understand what a monad was, i had no problem using them.
Re:Why Static Languages Suffer from Complexity (2022)
by chongli on Thursday August 10, 2023 @02:10AM
(#37072525)
The problem with monads is that they’re a term from abstract algebra. Haskell’s documentation talks about them from that perspective (including monad laws), which makes them quite natural for anyone who’s studied some abstract algebra in university.
Unfortunately, most programmers trying to learn Haskell have not taken any abstract algebra courses, so these definitions and laws are deemed insufficient. Regular people want to know the exact nature of a thing — not just a list of mathematical properties that hold — and so they insist that there must be something more. But there’s nothing there!
Re:Why Static Languages Suffer from Complexity (2022)
by grumpyprole on Thursday August 10, 2023 @03:13AM
(#37072980)
This is FUD. You don't need to have studied abstract algebra to understand the monad laws. Basic high school maths is more then sufficient. It really surprises and concerns me that so many developers seem frightened and wary of mathematics and logic. It used to be called "software engineering".
Re:Why Static Languages Suffer from Complexity (2022)
by tome on Thursday August 10, 2023 @03:17AM
(#37073006)
> This is FUD
I think chongli is actually in agreement with you
Re:Why Static Languages Suffer from Complexity (2022)
by klodolph on Thursday August 10, 2023 @03:20PM
(#37080539)
The reason that there are so many tutorials and analogies is because monads are relatively easy to understand, but unfamiliar, and they allow you to do a bunch of math (which you don’t have to do). Not hard enough to cause Haskell programmers any problems.