3 ms·
I think we need a new paradigm name, something like denotational programming. I think very few people who are into functional programming argue that functions a
by alipang 13y ago
I think we need a new paradigm name, something like denotational programming. I think very few people who are into functional programming argue that functions are the right abstraction for expressing every problem, which is why there are things like monads ,which in a sense generalize functions, including the IO monad.
The reason Haskell is such a nice language also for imperative programming is that everything is "tangible", i.e. you can talk about the "action" 'x := x + 1' as a value (in the IO monad), that is, it has a denotation. It also gives you a purely funcitonal way of combining side-effecting actions, rather than having the two worls of pure/stateful merged into one.