On Tue, Feb 19, 2008 at 02:42:08PM -0800, Andrew Lentvorski wrote:

One of the big papers in Lisp is about how to use setjmp/longjmp for continuation passing trampolines but minimize the performance impact.

Do you know if anyone other than Chicken Scheme has implemented this?

I found it works fairly well, but does tend to generate quite a bit of
garbage, mostly because the C compiler still creates lots of stack frames
that will never be returned from.

Common Lisp doesn't have first-class continuations, so doesn't have these
complexities, but also doesn't have the benefits.  I wish threads were more
commonly implemented in Common Lisp.

GHC in haskell kind of does something similar, except that they edit the
assembly output of the compiler to get rid of the stack frames.

David

--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to