[Haskell-cafe] evaluation semantics of bind

Gregg Reynolds dev at mobileink.com
Tue Feb 10 08:22:41 EST 2009

On Mon, Feb 9, 2009 at 10:17 PM, Richard O'Keefe <ok at cs.otago.ac.nz> wrote:

> On 10 Feb 2009, at 5:07 pm, Gregg Reynolds wrote:
>> Thanks.  I see the error of my ways.  So, IO expressions must be evaluated
>> if they are in the chain leading to main.
> We need some standard terminology to distinguish
> between *evaluating* an expression and *performing*
> the result of an expression of type IO something.

Indeed.  Wrote a blog article about this proposing a semiotic approach:

> An IO expression that is passed to a function at a
> strict position must be evaluated whether the result
> is performed or not.
> An IO expression whose result will be performed must
> be evaluated before that performance can take place.

Is the result of evaluation a thunk/suspension/closer?

> (Dash it, this really is getting us into White Knight land.)

What's White Knight land?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20090210/9c4151f7/attachment.htm

More information about the Haskell-Cafe mailing list