On 23 Dec 2011, at 02:11, Conor McBride wrote: >> So... you are developing a programming language with all calculations being >> automatically lifted to a monad? What if we want to do calculations with >> monadic values themselves, like, for example, store a few monadic >> calculations in a list (without joining all there effects as the sequence >> function does)? > > The plan is to make a clearer distinction between "being" and "doing" by > splitting types clearly into an effect part and a value part, in a sort > of a Levy-style call-by-push-value way. The notation > > [<list of effects>]<value type> > > is a computation type whose inhabitants might *do* some of the effects in > order to produce a value which *is* of the given value type.
Oh, so it's not an arbitrary monad, but a single one. That's a bit disappointing. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe