At 8:29 AM -0700 7/4/02, Sean O'Rourke wrote:
>Sick.  Anyways, I think it seems like a more natural way to do things than
>traditional call/cc.  "$block.continuation" reads as "where do I go after
>$block?"; "$block.continuation($foo)" as "after executing $block, proceed
>on to $foo"; "(call/cc func)" as "call func with a single argument being
>the 'rest of the current computation'".  This last definition makes Scheme
>and Lisp people happy, but (at least for me) the first two are much easier
>to grasp, as they refer to what's going on more concretely.

If you want really sick, consider that we are *not* limited to the 
standard call/cc functionality. Continuations can reasonably be taken 
at any statement boundary. (They don't work well if taken from within 
an expression. Or, if they do, it hurts my brain enough that I'd 
rather you didn't...) You also should be able to invoke them 
anywhere, including within expressions.

You're not obligated to pass the continuation for the call/cc into 
call/cc (you could pass another one in if you chose), nor, I suppose, 
are you obligated to not keep it around for later use.
-- 
                                         Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                       teddy bears get drunk

Reply via email to