[Haskell-cafe] Yet another IO initializer: Effectful declarations
and an ACIO monad
Jules Bean
jules at jellybean.co.uk
Thu Nov 25 07:40:50 EST 2004
On 25 Nov 2004, at 10:07, Ian.Stark at ed.ac.uk wrote:
> Way back in this thread, Koen Claessen mentioned the idea of a
> commutative
> version of the IO monad for handling things with identity. That
> doesn't quite
> do it, but I have a refinement that might. The thing is to focus on IO
> computations that are:
>
> a) central -- their effect commutes with every other IO action
> b) affine -- their effect is not directly observable, and can be
> discarded.
>
> Thus an element u of (IO a) is affine central if for all v::IO b and
> w::IO c,
>
> do { x <- u; v } = v (affine)
If x does not occur in v, I presume?
Jules
More information about the Haskell-Cafe
mailing list