| Morris, Jr., James H. A bonus from van Wijngaarden's device. Communications of the ACM, 15, 8 (August 1972) page 773. |
....for converting an arbitrary expression into continuation passing style (CPS) although I didn t call it that at the time. The first reference to CPS of which I am now aware is a 1966 paper by van Wijngaarden [37] CPS was also independently discovered by several others over the next several years [19, 23, 24, 30, 35]. Reynolds [31] pro vides a fascinating historical account of the early discovery and rediscovery of this concept. His paper alerted me to some of the historical references mentioned above. This work was presented in preliminary form at the 1972 ACM Conference on Proving Assertions about ....
Morris, Jr., James H. A bonus from van Wijngaarden's device. Communications of the ACM, 15, 8 (August 1972) page 773.
....or labels (assuming it were applied to a richer language that permitted such procedures) A referee recognized that the basic idea of the paper had been anticipated by van Wijngaarden, and as a consequence the paper was rejected. In its place Morris published a brief letter to the editor [29] that did not describe the program transformation in detail, but demonstrated that it could be used to eliminate procedures returning complex values. The letter also noted that a conventional stack based implementation of the transformed program would quickly exhaust its stack. In retrospect, ....
....purpose was to show that an arbitrary program can be transformed (by the CPS transformation) into a form that can be implemented by a stack, i.e. where the storage allocated during the execution of a procedure can be deleted when the procedure exits. Of course, the price (as noted by J. H. Morris [29]) is that the stack never pops until the end of program execution. Fischer s paper is notable for the first proof about the semantics of continuations, i.e. that the CPS transformation preserves meaning in an appropriate sense. This result was in a setting where lambda expressions denote ....
[Article contains additional citation context not shown here]
Morris, Jr., James H. A bonus from van Wijngaarden's device. Communications of the ACM, 15, 8 (August 1972) page 773.
....have to pay a price we have to rewrite our programs to use continuations, and this is called the continuation passing style (C.P.S. of programming. However, although the C.P.S. gives a good semantics for labelled jumps, it is not a practical style to program in. The reason is cited by Morris [26]: procedures are no longer named subprograms we have to treat them as goto s, but with special return gotos tagged on. Clearly, we have to write a lot more procedures than we would ordinarily. This leads to a very unnatural and unreadable programming style. The C.P.S. also has an effect on ....
J. H. Morris, Jr. A bonus from van Wijngaarden's device. Communications of the ACM, 15(8):773, 1972.
....variables can be deleted upon block exit. A nice introduction to the CPS transform is [140] 1 By equivalent program , we mean that both programs give equivalent results. The unfortunate consequence of CPS ing a program, however, is that the stack is popped only when the program terminates [97]. Hence all bindings are retained till the very end even though they may not be used anymore. The definition of the CPS transform does not give a natural method of stack compression that would delete unnecessary bindings. Research on continuation passing style transforms has witnessed a great ....
Morris, Jr., J. H. A bonus from van Wijngaarden's device. Commun. ACM 15, 8 (Aug. 1972), 773. .
.... in [van Wijngaarden 66] for transforming Algol 60 programs to eliminate all labels, in [Mazurkiewicz 71] for proving algorithms, and in [Fischer 72] to prove the generality of a deletion implementation strategy, based on adding a functional argument and transforming returns into calls [Morris 72] Continuations were presented as a device for formalizing control flow in the denotational specification of programming languages with jumps [Strachey Wadsworth 74] This device was characterized as yielding language specifications independent of the evaluation order of the defining language ....
James H. Morris Jr.: A Bonus from van Wijngaarden 's Device, Communications of the ACM Vol. 15, No 8, p 773 (August 1972)
No context found.
Morris, J.H. Jr., A bonus from Van Wijngaarden's device. Comm. of the ACM 15 (Aug. 1972) 773.
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