[Haskell-cafe] Haskell w/ delimited continuations

Taral taralx at gmail.com
Sat Feb 23 14:35:22 EST 2008


On Sat, Feb 23, 2008 at 1:05 AM,  <oleg at okmij.org> 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 <taralx at gmail.com>
"Please let me know if there's any further trouble I can give you."
    -- Unknown


More information about the Haskell-Cafe mailing list