

Admitting that Functional Programming Can Be Awkward (2007) - olalonde
http://prog21.dadgum.com/3.html

======
alipang
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.

------
maxharris
The author doesn't know it, but the issues he raises are what functional
reactive programming approaches aim to solve.

[http://en.wikipedia.org/wiki/Functional_reactive_programming](http://en.wikipedia.org/wiki/Functional_reactive_programming)

