Status of callcc

Lukas Stadler lukas.stadler at
Thu Apr 24 11:23:07 PDT 2008


I'm working on this for 1 1/2 months now (under Johns supervision). I've 
implemented the deserialization part and I'm currently finishing an 
alternative representation of the serialized stack that is more 
accessible from the Java side. This should soon be finished and I'll 
hopefully be able to submit a patch with this code within the next 1-2 
I've written a few small applications, for example one that serializes 
the stack to a file and resumes it later on, like a webserver that 
hibernates an inactive session to a database.

performance: I haven't done any performance measurements yet. My code 
hasn't evolved far enough (I'm only working on the openjdk project for 1 
1/2 months now, part time...) but there's a paper on a similar approach 
to continuations in a JVM that also discusses performance:

completeness: I'd say it's under development, and with the public API 
comes the task of finding and dealing with all the VM invariants that 
can be broken by this. And security, of course, is a big question too. 
There's ongoing communication on these points on this mailing list, 
under the subject "stack manipulation API"

I hope this helps,
- Lukas

Charles Oliver Nutter wrote:
> While I'm waiting, hopefully, for someone to hold my hg-inexperienced 
> hand, I was wondering about the status of copyStack/restoreStack at 
> present. A few questions off the top of my head:
> - What's the correct way to use Unsafe to test this out? All I can find 
> online are the nasty reflection hacks that make a field visible.
> - What's the performance like for copy/restore? I ask because I'm 
> curious if it would be possible to implement a cooperative threading 
> environment with the stack copying capabilities as they exist today.
> - Is this mostly complete, waiting for discussions about a public API, 
> or is it still under development?
> - Charlie
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev at

More information about the mlvm-dev mailing list