Felix Winkelmann <felix@anu.ie> wrote:
+---------------
| Darius Bacon wrote:
| > Henry Baker's ``Cheney on the MTA'' shows a clever idea -- calls are C
| > function calls that never return, but you periodically do a longjmp()
| > to unwind the stack. You can think of it as making the C stack the
| > first generation in a generational GC.
|
| I just had a look (thanks also to <cdm@pacific.net>) at the
| mentioned paper and it seems very interesting, but nonetheless
| awkward (Is it usable with full call/cc ?)
+---------------
I think yes. The only trick is that call/cc must first do a stack-
generation GC (which includes the longjmp to reset the stack) to
get all of the useful history out of the C stack and into the heap.
Once that's done, the call/cc's very straightfoward (as with systems
whose call stacks are entirely in the heap).
-Rob
-----
Rob Warnock, 8L-855 rpw3@sgi.com
Applied Networking http://reality.sgi.com/rpw3/
Silicon Graphics, Inc. Phone: 650-933-1673
2011 N. Shoreline Blvd. FAX: 650-964-0811
Mountain View, CA 94043 PP-ASEL-IA