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

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



At 04:36 PM 12/10/01, Paul Prescod wrote:
>Dan Sugalski wrote:
> >
> >...
> >
> > Perl's stack is pretty much independent of the C/system stack, so that's
> > not a problem. We have other problems to compensate, of course. :)
>
>I wonder if that is always true. ;)
>
>Consider: Perl code calls into Expat or Tk.
>Expat or Tk of course uses the C stack.
>Expat or Tk calls back into Perl.
>
>Now, how do you build a continuation that takes into account the *C
>stack* being used by Expat or Tk? That's one of several (!) issues
>keeping continuations out of Python.

I wonder if us ex-Harlequin people can dredge our memory to describe
how we did this for Dylan?  I know it's possible to have Dylan code call
into Expat, passing a Dylan callback that does, e.g., a non-local exit
back into Dylan code, and it all works fine.

I remember we had a lot of discussion trying to get the exactly right, but
I don't remember what we ended up with.  I think this all did get written
down, if only we can find it.