Parital Computation of Programs

This paper attempts to clarify the difference between partial and ordinary computation. Partial computation of a computer program is by definition "specializing a general program based upon its operating environment into a more efficient program". It also shows the usefulness of partial computation. Finally, the formal theory of partial computation, technical problems in making it practical, and its future research problems are discussed.

[1]  John McCarthy,et al.  LISP 1.5 Programmer's Manual , 1962 .

[2]  D. Bobrow,et al.  THE PROGRAMMING LANGUAGE LISP: ITS OPERATION AND APPLICATIONS, , 1967 .

[3]  Ann Yasuhara,et al.  Recursive function theory and logic , 1971, Computer science and applied mathematics.

[4]  Richard C. T. Lee,et al.  Symbolic logic and mechanical theorem proving , 1973, Computer science classics.

[5]  Peter Henderson,et al.  A lazy evaluator , 1976, POPL.

[6]  Klaus Samelson,et al.  Language Hierarchies and Interfaces , 1976, Lecture Notes in Computer Science.

[7]  Erik Sandewall,et al.  A Partial Evaluator, and its Use as a Programming Tool , 1976, Artif. Intell..

[8]  Andrei P. Ershov,et al.  Correctness of Mixed Computation in Algol-Like Programs , 1977, MFCS.

[9]  Andrei P. Ershov,et al.  On the Partial Computation Principle , 1977, Inf. Process. Lett..

[10]  Andrei P. Ershov,et al.  An Implementation-Oriented Method for Describing Algorithmic Languages , 1977, IFIP Congress.

[11]  Andrei P. Ershov,et al.  On the Essence of Compilation , 1977, Formal Description of Programming Concepts.

[12]  Anders Haraldsson A program manipulation system based on partial evaluation , 1977 .

[13]  Erich J. Neuhold,et al.  Formal Description of Programming Concepts: Proceedings of the IFIP Working Conference on Formal Description of Programming Concepts, St. Andrews, NB, Canada, August 1-5, 1977 , 1978 .

[14]  Andrei P. Ershov,et al.  Mixed computation in the class of recursive program schemata , 1978, Acta Cybern..

[15]  Louise Trevillyan,et al.  The Experimental Compiling System , 1980, IBM J. Res. Dev..

[16]  Richard S. Bird,et al.  Tabulation Techniques for Recursive Programs , 1980, CSUR.

[17]  Pär Emanuelson,et al.  Performance enhancement in a well-structured pattern matcher through partial evaluation , 1980 .

[18]  Robert M. Keller,et al.  Applicative caching: Programmer control of object sharing and lifetime in. distributed implementations of applicative languages , 1981, FPCA '81.

[19]  Henryk Jan Komorowski,et al.  A specification of an abstract Prolog machine and its application to partial evaluation , 1981 .

[20]  David A. Moon,et al.  The Lisp Machine manual , 1981, SGAR.

[21]  Y. Futamura,et al.  Development of computer programs by problem analysis Diagram(PAD) , 1981, ICSE '81.

[22]  Andrei P. Ershov,et al.  Mixed Computation: Potential Applications and Problems for Study , 1982, Theor. Comput. Sci..