On Sat, Feb 23, 2008 at 1:05 AM,  <[EMAIL PROTECTED]> wrote:
>  Adding control effects (shift/reset) changes the expressivity
>  results. Now all three calculi are distinct and none subsumes the
>  other. For example, the expression
>         reset( (\x -> 1) (abort 2))
>  evaluates to 1 in call-by-name and evaluate to 2 in call-by-value.
>  The expression
>         reset ((\x -> x + x) (shift f f))
>  has the type int->int in call-by-need (it is a function \x -> x + x)
>  and it has the type int->int->int in call-by-name (and it is the
>  curried addition function).

Aha. Okay, so shift/reset exposes evaluation order, amongst other
things. Hm... thank you very much!

-- 
Taral <[EMAIL PROTECTED]>
"Please let me know if there's any further trouble I can give you."
    -- Unknown
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to