All~ I don't like the idea of having to dig down through the entire return chain promoting these guys. Is there a reason not to use DOD/GC to recycle continuations?
Matt On Tue, 2 Nov 2004 14:10:09 -0500, Dan Sugalski <[EMAIL PROTECTED]> wrote: > At 6:51 PM +0100 11/2/04, Leopold Toetsch wrote: > > > >* The stack frame caching is back, hopefully now implemented correctly: > > 1) when a return continuation is invoked the stack frame is recycled > > 2) when a continuation is created, all the return continuations up the > > call chain are converted to real continuations by changing the > > vtable. This prevents 1) from happening. > > 3) cloning a return continuation yields a true continuation > > > >* When you need the return continuation of the current call (and > >reuse it later) use this sequence: > > > > .include "interpinfo.pasm" > > $P1 = interpinfo .INTERPINFO_CURRENT_CONT > > $P1 = clone $P1 > > > >I'm still inclined to make this sequence an opcode, though. The > >cloning is still necessary, as the return continuation is returned. > > Hrm. I think the returned continuation should be usable without > cloning. If we need to clone it it should be part of the continuation > fetching. > -- > Dan > > --------------------------------------it's like this------------------- > Dan Sugalski even samurai > [EMAIL PROTECTED] have teddy bears and even > teddy bears get drunk > -- "Computer Science is merely the post-Turing Decline of Formal Systems Theory." -???
