Thanks for the reference. I base my opinion on my own observations - e.g. the repeated failures of attempting to model stream processing with infinite lists, the relative success of modeling exceptions explicitly with monads compared to use of `fail` or SomeException, etc..
On Sun, Jan 22, 2012 at 5:25 PM, David Barbour <dmbarbour@gmail.com> wrote:You seem to argue that, even in a lazy language like Haskell,
> The laws for monads only apply to actual values and combinators of the monad algebra
equational laws should be considered only for values, as if they where
stated for a total language. This kind of reasoning is called "fast
and loose" in the literature and the conditions under which it is
justified are established by Danielsson and others:
http://www.cse.chalmers.se/~nad/publications/danielsson-et-al-popl2006.html
Sebastian