On Jan 31, 2007, at 8:38 PM, Charles Oliver Nutter wrote:
> The latter. The JVM and CLR do not provide any way to manipulate  
> the call stack, which is the typical and probably most efficient  
> way to implement continuations (aside from providing your own  
> machine and call stack implementation, which would essentially be  
> an interpreter-on-VM in both cases).

Interesting.  I was going to suggest that maybe you could use threads  
to implement continuations but a little research and intuition tells  
me that continuations are actually more 'primitive' than threads so  
you could build threads (and exceptions and co-routines and ...) on  
top of continuations but that you can't really implement continuation  
semantics on top of threads.

> Ruby developers will have to decide if inability to run on JVM or  
> CLR-based Ruby implementations is worth all the continuation-based  
> "funky stuff". Honestly, I don't think it is.

I find it somewhat disconcerting that Ruby might be hobbled by VMs  
designed for other languages.  I've been playing around with  
continuations to simplify web programming (like Iowa) and it is a  
really nice solution.

Gary Wright