[racket] Saved continuations

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Wed Sep 5 17:52:31 EDT 2012

No. A continuation represents the __control state__ of a program NOT the __memory state__.  Since your program can change the memory state while the continuation is stored, and since the continuation may reference the memory state once it is thrown, there is no way to guarantee the exact same outcome in general. 

People have experimented with call-with-current-store so that they can capture the store and re-install it, especially for continuation launches. The SML/NSJ debugger worked like this but in general it is not practical. 

-- Matthias



On Sep 5, 2012, at 5:39 PM, Harry Spier wrote:

> Thanks Daniel but the question I was trying to find out was:
> Is there a way to save any  valid continuation and be guaranteed that nothing that happens in the program between the time the continuation was saved and the time the saved continuation was invoked will alter the results of invoking the continuation.
>  
> Harry
> ---------------------
> D. Herring wrote:
> Does an extra (let ...) do what you want, or do you want new bindings for *all* variables that are used in the continuation?
> ____________________
>  Racket Users list:
>  http://lists.racket-lang.org/users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20120905/d997c152/attachment.html>

Posted on the users mailing list.