3 ms·
Specifically, it’s about controlling side effects by isolating them. That is, code with side effects has to explicitly declare that it has them, and calling any
by pmiller2 7y ago
Specifically, it’s about controlling side effects by isolating them. That is, code with side effects has to explicitly declare that it has them, and calling any code with side effects allows the compiler to infer the calling code has side effects. Typically, the isolation mechanism is either explicitly monads, or, is equivalent to monads.
This is incredibly useful for debugging, as is single assignment style code, although single assignment is not necessarily implied by “functional programming.”