On Thu, Feb 5, 2009 at 11:25 AM, Andrew Wagner <[email protected]>wrote:
> I think the point of the Monad is that it works as a container of stuff, >>> that still allows mathematically pure things to happen, while possibly >>> having some opaque "other stuff" going on. >>> >> > This at least sounds, very wrong, even if it's not. Monads are not impure. > IO is, but it's only _one_ instance of Monad. All others, as far as I know, > are pure. It's just that the bind operation allows you to hide the stuff you > don't want to have to worry about, that should happen every time you compose > two monadic actions. > Well all I can tell you is that I can have (IO Int) in a function as a return, and the function is not idempotent in terms of the "stuff" inside IO being the same. Sounds impure to me.
_______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
