At 11:00 AM +0200 6/9/02, Jerome Vouillon wrote: >On Sat, Jun 08, 2002 at 02:39:33PM -0400, Dan Sugalski wrote: >> >Instead of using some space on the stack, co-routines can store all >> >their local variables into their closure. Then, there is no need to >> >swap in any context. >> >> You still need to store the stack frames created since the start of >> the coroutine when picking up after the yield. Otherwise we're >> declaring that coroutines can't use any stack at the point a yield is >> called, which is a rather big thing to declare. > >Python-style co-routines have this very restriction. If we want real >co-routines, we can build them on top of callcc, which will take care >of storing the stack frames.
I'm not sure I want to go all the way to using continuations for coroutines. Seems a bit of overkill, especially on the return from the coroutine. Python-style restrictions are right out, of course--if we're going to do it, we might as well do it right as we don't have an existing implementation we're restricted by. -- Dan --------------------------------------"it's like this"------------------- Dan Sugalski even samurai [EMAIL PROTECTED] have teddy bears and even teddy bears get drunk