50 citations found. Retrieving documents...
G. L. Steele, Jr. Data representation in PDP-10 MACLISP. Technical Report AI Memo 420, Massachusetts Institute of Technology, Artificial Intelligence Laboratory, Sept. 1997.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

From Control Effects to Typed Continuation Passing - Thielecke (2003)   (1 citation)  (Correct)

....Keywords Continuations, control e#ects, type and e#ect systems, polymorphism 1. INTRODUCTION The transformation of a program into continuation passing style (CPS) makes all control transfers, such as jumps or procedure calls, explicit. CPS can be used as an intermediate language in compiling [2, 26]. Moreover, CPS makes it easy to accommodate powerful control operators in the Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that ....

Guy Steele. Rabbit: A compiler for Scheme. Technical Report AI TR 474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, May 1978.


A Sound and Complete Axiomatization of Delimited Continuations - Kameyama, Hasegawa (2003)   (2 citations)  (Correct)

....a set of reduction rules for shift and reset which is sound and complete with respect to CPS translation. It is already a di#cult problem for the case of first class continuations. We should at least consider optimized (administrative redexfree) CPS translation in the sense of Plotkin [22] Steele [28], Danvy Filinski[6] Sabry Felleisen [25] and Danvy Nielsen [8] Finally, we wish to obtain a deeper, more semantics oriented understanding of the delimited continuations and our completeness proof. The second author has started to study this direction [16] by replacing the target calculus by ....

G. L. Steele Jr. RABBIT: A Compiler for SCHEME. Technical Report AITR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, 1978.


Eta-Redexes in Partial Evaluation - Palsberg   (Correct)

....transformation is a syntax constructor, all occurrences of and # are dynamic. And in fact, Gomard s binding time analysis does classify all occurrences to be dynamic. But CPS terms resulting from this transformation contain redundant administrative beta redexes, which have to be post reduced [15]. These beta redexes can be avoided by inserting eta redexes in the CPS transformation, allowing some beta redexes in the transformation to become static. The second part of Figure 2 shows the revised transformation containing three extra eta redexes: one for the CPS transformation of ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


From Control Effects to Typed Continuation Passing - Thielecke (2003)   (1 citation)  (Correct)

....Continuations, control effects, type and effect systems, polymorphism 1. INTRODUCTION The transformation of a program into continuation pass ing style (CPS) makes all control transfers, such as jumps or procedure calls, explicit. CPS can be used as an interme diate language in compiling [2, 26]. Moreover, CPS makes it easy to accommodate powerful control operators in the Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that ....

Guy Steele. Rabbit: A compiler for Scheme. Technical Report AI TR 474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, May 1978.


Compiling Monads - Danvy, Koslowski, Malmkjær (1991)   (Correct)

.... s meta circular definition of Lisp and was actively pursued with the blossoming of artificial intelligence languages (Planner, Conniver, Scheme, Intrigue) a direction that progressively departed from artificial intelligence to stand on its own with Steele and Sussman s Art of the Interpreter [25]. But interpreters have a runtime price and this triggered a direction of research activity on how to transform interpreters to compilers [7] paralleling research on denotational semantics directed compiler generation [14] These two research areas today appear to coincide, both in theory and in ....

Guy L. Steele Jr. and Gerald J. Sussman. The art of the interpreter or, the modularity complex (parts zero, one, and two). AI Memo 453, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


On Static and Dynamic Control-Flow Information in Program.. - Damian (2001)   (Correct)

....to the context. The evaluation of an expression completes by calling the continuation with the computed value. The notion of continuations has emerged in several forms in the 1960 s and early 1970 s, see for instance Reynolds s survey [102] Since then, continuations have been used in compilation [3, 6, 44, 113], logic [48, 83] and semantics [43, 101, 109] Turning a term into continuation passing style amounts to making explicit the continuations inside the term. Such transformation enables a simple implementation of control constructs present in modern programming languages as Scheme [73] or ML [7] ....

....are also routine in staging transformations [70] and in the formal specification of programming languages for semantics directed compiling [88, Section 8. 2] Since one of the most e#ective binding time improvements is the transformation of source programs into continuation passing style (CPS) [20, 113], people have wondered whether CPS may help program analysis in general. Nielson s early work on data flow analysis [87] suggests so, since it shows that for a nondistributive analysis, a continuation semantics yields more precise results than a direct semantics. The CPS transformation is ....

[Article contains additional citation context not shown here]

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Static Transition Compression - Damian, Danvy (2001)   (Correct)

....We have pointed out how to avoid generating these chains of jumps. In SSA terms [3, 10, 15] our translation naturally yields fewer merge points without duplicating contexts. It also generates fewer basic blocks and thus makes it faster to compute an SSA form. Turning to the CPS transformation [5, 13], we observe that the issue of chains of jumps arises there in the form of spurious # redexes such as #v.k v, where k 14 denotes a continuation. These # redexes appear in the translation of tail calls and for nested conditional expressions, just like here for while loops and nested conditional ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


On Static and Dynamic Control-Flow Information in Program.. - Damian (2001)   (Correct)

....to the context. The evaluation of an expression completes by calling the continuation with the computed value. The notion of continuations has emerged in several forms in the 1960 s and early 1970 s, see for instance Reynolds s survey [102] Since then, continuations have been used in compilation [3, 6, 44, 113], logic [48, 83] and semantics [43, 101, 109] Turning a term into continuation passing style amounts to making explicit the continuations inside the term. Such transformation enables a simple implementation of control constructs present in modern programming languages as Scheme [73] or ML [7] ....

....are also routine in staging transformations [70] and in the formal specification of programming languages for semantics directed compiling [88, Section 8. 2] Since one of the most e#ective binding time improvements is the transformation of source programs into continuation passing style (CPS) [20, 113], people have wondered whether CPS may help program analysis in general. Nielson s early work on data flow analysis [87] suggests so, since it shows that for a nondistributive analysis, a continuation semantics yields more precise results than a direct semantics. The CPS transformation is ....

[Article contains additional citation context not shown here]

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Syntactic Accidents in Program Analysis: On the Impact of the.. - Damian, Danvy (2000)   (9 citations)  (Correct)

....are also routine in staging transformations [17] and in the formal specification of programming languages for semantics directed compiling [22, Section 8. 2] Since one of the most e#ective binding time improvements is the transformation of source programs into continuationpassing style (CPS) [3, 32], people have wondered whether CPS may help program analysis in general. Nielson s early work on data flow analysis [21] suggests so, since it shows that for a non distributive analysis, a continuation semantics yields more precise results than a direct semantics. The CPS transformation is ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


The Impact of the Lambda Calculus in Logic and Computer Science - Barendregt (1997)   (8 citations)  (Correct)

....of LISP, have used, or are still using, this computational model. The SECD machine also can be modelled for lazy functional languages, see [57] Another way of implementing functional languages is based on the so called CPS translation. This was introduced in [96] and used in a compilers by [109] and [3] See also [93] and [97] The first important typed functional language with an eager evaluation strategy is Standard ML, see [84] This language is based on the Curry variant of ##, the simply typed lambda calculus with implicit typing, see [8] Expressions are type free, but are only ....

Guy L. Steele Jr., Rabbit: A compiler for Scheme, Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Proving Syntactic Properties of Exceptions in an Ordered.. - Polakow, Yi   (2 citations)  (Correct)

....(stackability) i.e. installing an exception handler and handling an exception respectively amounts to push and pop. Furthermore we show that the ordering properties investigated in [DDP99,DP95] for results of the conventional continuation passing style (CPS) transformation [DF92,Plo75,Ste78] stackability of both continuation identifiers and continuation parameters also hold for results of an extended CPS transform[KYD98,App97] which replaces exception raise and handle expressions by function (continuation) calls and constructions in higher order programs. We prove the two ....

....7 [t=x]e (v: e)t 7 [t=v]e (k: e)pair(fl 0 ; fl 1 ) 7 [pair(fl 0 ; fl 1 ) k]e nrml pair(fl 0 ; fl 1 ) 7 fl 0 hnd pair(fl 0 ; fl 1 ) 7 fl 1 3. 3 Continuation passing style (CPS) Transformation We use an extension of the conventional continuation passing style (CPS) transformation [DF92,Plo75,Ste78] to get from a DS term to a CPS term. We remove the raise and handle expressions by passing two continuations to each expression: one for the normal course of execution, and a second one (the handler continuation) for exceptions. Only raise and handle expressions use the handler continuation. A ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


On the Idempotence of the CPS Transformation - Danvy, Malmkjær (1996)   (Correct)

....89 42 33 69. Fax: 45) 89 42 32 55. Home pages: http: www.brics.dk fdanvy,karolineg. 1 Introduction The CPS transformation stands at an intersection between several areas of Computer Science: on terms, it is used to encode evaluation orders [10, 14, 17, 18] e.g. for compiling programs [1, 15, 20]; on types, seen as propositions, it corresponds to a double negation translation, i.e. as a mapping from Classical Logic into Intuitionistic Logic [13, 16, 23] We are interested in the effect of iterating the CPS transformation. In the absence of control operators [2, 4, 9] programming ....

....pure calculus. Following Reynolds [18] we distinguish between trivial terms, whose reduction always terminate, and serious terms, whose reduction may diverge. Figures 2 and 3 display Plotkin s CPS transformation and the syntactic characterization of its output, after administrative reductions [5, 17, 19, 20]. Both BNF s were used in earlier work on the direct style transformation, the inverse of the CPS transformation [3, 8] 3 Idempotence: No Let us CPS transform the identity function x:x in an empty context, for simplicity. The result reads as follows. x:k 1 :k 1 x CPS transforming this result ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Formalizing Implementation Strategies for First-Class Continuations - Danvy (2000)   (9 citations)  Self-citation (Report)   (Correct)

....programs: direct style (DS) # terms with literals. The BNF of DS programs is displayed in Figure 1. Assuming a call by value evaluation strategy, the BNF of CPS programs is displayed in Figure 2. CPS programs are prototypically obtained by CPS transforming DS programs, as defined in Figure 3 [7, 20, 21]. Figure 4 displays our starting point: a standard abstract machine implementing # reduction for CPS programs. This machine is a simplified version of another machine studied jointly with Belmina Dzafic and Frank Pfenning [6, 9, 11] We use two judgments, indexed by the syntactic categories of ....

....2cc t #v.e k Fig. 6. Characterization of a CPS program with second class continuations Furthermore, 2Cont validity is closed under # reduction, which means that it is preserved by regular evaluation as well as by the arbitrary simplifications of a CPS compiler [21]. The corresponding formal statement and its proof are straightforward and omitted here: we rely on them in the proof of Theorem 1. Therefore each use of each continuation identifier k is uniquely determined, capturing the fact that in the BNF of 2Cont valid CPS programs, one continuation ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Thunks and the Lambda-Calculus - Hatcliff, Danvy (1996)   (3 citations)  Self-citation (Report)   (Correct)

....Values n [ v : b j x:e v 2 Values v [ v : b j x j x:e . where e 2 Figure 1 displays Plotkin s call by name CPS transformation C n (which simulates call by name under call by value) Side note: the term CPS stands for Continuation Passing Style . It was coined in Steele s MS thesis [35]. Figure 2 displays Plotkin s call by value CPS transformation C v (which simulates call by value under call by name) Figure 3 displays the standard thunk based simulation of call by name using call by value evaluation of the language . extends as follows. e 2 e : j delay e j force ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Higher-Order Rewriting and Partial Evaluation - Danvy, Rose (1997)   (1 citation)  Self-citation (Report)   (Correct)

.... of the calculus that is insensitive to its order of evaluation: the sub language of continuation passing style (CPS) A CPS transformation translates terms into CPS (and in so doing, it encodes an evaluation order) As such, it is useful in compilers both for functional languages such as Scheme [4, 19, 30] and ML [1, 20] with a translation encoding eager semantics, and for pure languages such as Haskell [10, 23] with a transformation encoding lazy evaluation. There is therefore a strong interest in having efficient CPS transformations. The traditional way amounts to (1) performing the ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Partial Evaluation for Program Analysis - Damian (1998)   (4 citations)  Self-citation (Report)   (Correct)

....an approximative solution to the control flow problem in a higher order, untyped functional language: given a closed program, find what functions are called at each application point in the program in any run of the program. The source programs are assumed to be in Continuation Passing Style [13, 15]. 2 1.3 Notations In the following presentation we make use of basic notions of domain theory, as can be found in Winskel s textbook [16] A cpo is a set together with a complete partial order relation. For A and B cpo s, A # c B is the cpo of continuous functions from A to B. The cpo A# is ....

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Space-Efficient 64-bit Java Objects through Selective.. - Kris Venstermans Lieven   (Correct)

No context found.

G. L. Steele, Jr. Data representation in PDP-10 MACLISP. Technical Report AI Memo 420, Massachusetts Institute of Technology, Artificial Intelligence Laboratory, Sept. 1997.


The Occurrence of Continuation Parameters in CPS Terms - Danvy, Pfenning (1995)   (5 citations)  (Correct)

No context found.

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


A Functional Correspondence between Monadic Evaluators and.. - Ager (2004)   (1 citation)  (Correct)

No context found.

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Master's thesis, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978. Technical report AI-TR-474.


From Reduction-Based to Reduction-Free Normalization - Danvy (2004)   (Correct)

No context found.

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Master's thesis, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978. Technical report AI-TR-474.


A Functional Correspondence between Call-by-Need Evaluators and.. - Ager, al. (2004)   (2 citations)  (Correct)

No context found.

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Master's thesis, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978. Technical report AI-TR-474.


On Evaluation Contexts, Continuations, and the Rest of Computation - Danvy   (Correct)

No context found.

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Master's thesis, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978. Technical report AI-TR-474.


Separating Stages in the Continuation-Passing Style.. - Lawall, Danvy (1993)   (13 citations)  (Correct)

No context found.

Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.


Analysis and Efficient Implementation of Functional Programs - Sestoft (1991)   (43 citations)  (Correct)

No context found.

G.L. Steele. Rabbit: A compiler for Scheme. (A study in compiler optimization). Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, May 1978.


Screaming Yellow Zonkers - Siskind (1991)   (1 citation)  (Correct)

No context found.

Guy Lewis Steele Jr. and Gerald Jay Sussman. Lambda, the ultimate imperative. A. I. Memo 353, M. I. T. Artificial Intelligence Laboratory, March 1976.

First 50 documents

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC