[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: So, what the heck is a continuation anyway?



At 07:08 PM 12/10/2001 +0000, Seth Gordon wrote:
>Generally speaking, when you call a function, your program explicitly
>says "evaluate this function with such-and-such arguments".  The
>interpreter translates this to "evaluate this function with
>such-and-such arguments, and return the value and the control of
>further execution to *here*."
>
>That "*here*" is the continuation.  If the programmer can get explicit
>control of the continuation, then he or she can do perv^H^H^H^Hinteresting
>things, since a function can return values to somewhere other than its
>immediate caller.

Oh, I see. A continuation is a function call where, not only do you get to 
decide what you return, you get to decide where you return it to.

That's evil. I really like it. :)

Are there general rules as to where you're allowed to return to? I presume 
picking PC addresses out of the air's considered bad form.

					Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
dan@sidhe.org                         have teddy bears and even
                                      teddy bears get drunk