[gambit-list] continuation implementation details

Jason E. Aten j.e.aten at gmail.com
Wed Jun 8 23:11:34 EDT 2011


Thank you Alex!  Excellent pointers.

Thank you Hendrik. I guess I should have specified that I am interested in
how to implement first class serializable continuations, and to interface
with them.  As you point out, continuation passing style is simply never
returning.

A friend of mine was explaining that Microsoft's new Async C# offers a nice
interface programatic interface to continuations, where the compiler notices
the "yield" keyword, and automatically generates a finite state machine
where the current state is captured as a continuation, and then the
interface to the continuation is done via IEnumerable.  This sounds
elegant.  Has anyone compared it's ease of use to the gambit/scheme style
API?

On Wed, Jun 8, 2011 at 4:41 PM, Alex Queiroz <asandroq at gmail.com> wrote:

> Hallo,
>
> On Wed, Jun 8, 2011 at 11:35 PM, Hendrik Boom <hendrik at topoi.pooq.com>
> wrote:
> >
> > One hack -- Just let your C functions keep calling and never returning.
> > When it's time too return, call the continuation as you'd expect.
> > You'll never see old stack frames again unless they contain data you
> > need to point to.  Even cons will just give you stack storage, fill it
> > in, and call the continuation with a pointer to the consed cell.
>

On Wed, Jun 8, 2011 at 11:14 PM, Jason E. Aten <j.e.aten at gmail.com> wrote:
>
> If others on the list have pointers to papers as well, I'd enjoy reading
> about the best thoughts on how to implement continuations.
>

"Representing Control in the Presence of First-Class Continuations"
http://www.cs.indiana.edu/~dyb/papers/stack.ps

"A portable implementation of first-class continuations for
unrestricted interoperability with C in a multithreaded Scheme"
http://repository.readscheme.org/ftp/papers/sw2000/feeley.pdf

"Implementation strategies for first-class continuations"
http://www.springerlink.com/content/h5808n962434j275/fulltext.pdf

More in:
http://library.readscheme.org/page6.html

Cheers,
--
-alex
http://www.artisancoder.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20110608/cd8682ff/attachment.htm>


More information about the Gambit-list mailing list