Partial Evaluation of Computation Process--An Approach to a Compiler-Compiler
This paper reports the relationship between formal description of semantics (i.e., interpreter) of a programming language and an actual compiler. The paper also describes a method to automatically generate an actual compiler from a formal description which is, in some sense, the partial evaluation of a computation process. The compiler-compiler inspired by this method differs from conventional ones in that the compiler-compiler based on our method can describe an evaluation procedure (interpreter) in defining the semantics of a programming language, while the conventional one describes a translation process.
Unable to display preview. Download preview PDF.
- 1.Burstall, R.M. and Popplestone, R.J. POP-2 reference manual. Machine Intelligence (2) (1968) 205–249.Google Scholar
- 2.Feldman, J.A. Formal Semantics for Computer-Oriented Languages. Technical Report, Comput. Ctr., Carnegie Institute of Technology, 1964.Google Scholar
- 3.Lauer, P. Formal Definition of ALGOL 60. Technical Report TR 25.088, IBM Laboratory Vienna, 1968.Google Scholar
- 4.Lombardi, L.A. Advances in Computers, Vol. 8. Academic Press, New York, 1967.Google Scholar
- 5.McCarthy, J., Abrahams, P.W., Edwards, D.J., Hart, T.P., and Levin, M.I. LISP 1.5 Programmer's Manual, M.I.T. Press, 1962.Google Scholar
- 6.Naur, P. (Ed.). Revised report on the algorithmic language ALGOL 60. Comm. of ACM (6) (January 1963) 1–17.Google Scholar
- 7.Rutishauser, H. Description of ALGOL 60. Springer, 1967.Google Scholar
- 8.Walk, K., Alber, K., Bandat, K., Bekic, H., Chroust, Gerhard, Kudielka, V., Oliva, P. and Zeisel, G. Abstract syntax and interpretation of PL/I. Technical Report TR 25.082, IBM Laboratory Vienna, 1968.Google Scholar