4 ms·
Other than STM, what is special? Almost everything there has an equivalent in traditional imperative programming.
by ackfoobar 4y ago
Other than STM, what is special? Almost everything there has an equivalent in traditional imperative programming.
- pshirshov 4y agoMore contracts enforced by the typer. > Almost everything there Everything. But the mere presence of "equivalents" doesn't make pure functional programming less valuable.
- ackfoobar 4y agoI have used cats-effect but not ZIO. My view has been that reinventing imperative programming (IO monad) on math (pure FP) on imperative programming (the machine) brings me no benefit. What does a coarse-grained effect type get you? The hard part of concurrent programming is concurrency, rather than knowing what code is effectful.
- pshirshov 4y ago> What does a coarse-grained effect type get you? For monofunctors: reliable error handling, an ability to re-interpret the same IO structure multiple times, better reasoning during refactorings due to referential transparency. For bifunctors: the above plus explicit domain (expected) error encoding and even more reliable error handling.