[Haskell-cafe] Re: philosophy of Haskell

Conal Elliott conal at conal.net
Sun Aug 15 06:08:48 EDT 2010


On Sat, Aug 14, 2010 at 10:11 PM, Bill Atkins <watkins at alum.rpi.edu> wrote:

> On Saturday Aug 14, 2010, at 12:50 AM, Conal Elliott wrote:
>
> > And the IO monad is what Jerzy asked about.  I'm pointing out that the
> state monad does not capture concurrency, and the "EDSL model" does not
> capture FFI.  (Really, it depends which "EDSL model".  I haven't seen one
> that can capture FFI.  And maybe not concurrency either.)
> >
>
> So which model captures the way the IO monad works?


I don't think anyone has given a denotational (functional-style) model for
the meaning of IO.  As I wrote
elsewhere<http://conal.net/blog/posts/notions-of-purity-in-haskell/#comment-22829>
:

IO carries the collective sins of our tribe, as the scapegoat did among the
ancient Hebrews. Or, as Simon Peyton Jones expressed it, “The IO monad has
become Haskell’s sin-bin. Whenever we don’t understand something, we toss it
in the IO monad.” (From Wearing the hair shirt – A retrospective on
Haskell<http://research.microsoft.com/en-us/um/people/simonpj/papers/haskell-retrospective/>.)
Is it likely that we can then come along later and give a compelling and
mathematically well-behaved notion of equality to our toxic waste pile? Or
will it insist on behaving anti-sociably, as our own home-grown Toxic
Avenger <http://en.wikipedia.org/wiki/Toxic_Avenger>?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20100815/682908de/attachment.html


More information about the Haskell-Cafe mailing list