The Proper Definition of (evaluate :: a -> IO a)
Stefan O'Rear
stefanor at cox.net
Tue May 8 20:50:34 EDT 2007
On Tue, May 08, 2007 at 05:47:27PM -0700, Ashley Yakeley wrote:
> Simon Marlow wrote:
> >That's exactly right. Evaluate was introduced because it does something
> >different from (return $!). We tried in the documentation to be clear
> >about its semantics, but perhaps we weren't clear enough. I'll add
> >Isaac's suggested definition to the docs.
>
> If Isaac's definition is accurate, we might as well generalise it to any
> Monad.
Isaac's definition is equivalent to the standard evaluate as I proved.
However, my proof could be using misfeatures of IO.
Stefan
More information about the Libraries
mailing list