On 10/5/05, Thomas Chust <[EMAIL PROTECTED]> wrote:
> Am 04.10.2005, 20:46 Uhr, schrieb Peter Keller <[EMAIL PROTECTED]>:
>
> > [...]
> > What if the messages that a message passing system used were themselves
> > continuations? Chicken already compiles to continuation passing style,
> > so what would it mean to package up the continuation and move it to
> > another
> > machine for execution? How much state would have to go with it?
> > [...]
>
> Hello,
>
> CHICKEN does not have any feature that would make continuations
> serializable; it would mean that you somehow have to transform machine
> pointers to arbitrary memory locations where your continuations' assembler
> code lives into stuff that can portably be transferred over a network
> connection.

You'd either have to serialize some external representation of the code
pointer of a closure object and make sure the receiving end has the
same code and some mapping back to the proper code pointer, or
include source-code (or some representation that can be interpreted/
compiled) into the closure.

On the other hand, serializing continuations is a dangerous business -
it is very hard to estimate what finally ends up in a fully serialized
continuation...
For this reason I distrust using Scheme continuations for things like
continuation-based web-programming - it just doesn't scale
(pseudo-continuations like those used in CL-based web-frameworks
are different - here you have more control over what gets serialized
and what not).


cheers,
felix


_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to