Title
Continuations from generalized stack inspection
Abstract
Implementing first-class continuations can pose a challenge if the target machine makes no provisions for accessing and re-installing the run-time stack. In this paper, we present a novel translation that overcomes this problem. In the first half of the paper, we introduce a theoretical model that shows how to eliminate the capture and the use of first-class continuations in the presence of a generalized stack inspection mechanism. The second half of the paper explains how to translate this model into practice in two different contexts. First, we reformulate the servlet interaction language in the PLT Web server, which heavily relies on first-class continuations. Using our technique, servlet programs can be run directly under the control of non-cooperative web servers such as Apache. Second, we show how to use our new technique to copy and reconstitute the stack on MSIL.Net using exception handlers. This establishes that Scheme's first-class continuations can exist on non-cooperative virtual machines.
Year
DOI
Venue
2005
10.1145/1086365.1086393
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
Keywords
Field
DocType
virtual machine,defunctionalization,scheme,normal form,continuations,continuation passing style
Operational semantics,Virtual machine,Programming language,Computer science,Continuation,Defunctionalization,Theoretical computer science,A-normal form,Stack inspection,Continuation-passing style,Web server
Conference
Volume
Issue
ISSN
40
9
0362-1340
ISBN
Citations 
PageRank 
1-59593-064-7
24
1.36
References 
Authors
20
5
Name
Order
Citations
PageRank
Greg Pettyjohn1593.09
John Clements227520.85
Joe Marshall340434.95
Shriram Krishnamurthi42446178.81
Matthias Felleisen53001272.57