Abstract
This paper describes the implementation of a pedagogical version of Evalquote with a set of Fortran subroutines. Their study enables the user to understand the programming machinery needed to interpret Lisp programs; the implementation of the subroutines allows him to run pure Lisp in machines for which only Fortran is available. The approach used in this paper is to define a stack-machine capable of executing a sequence of pseudo-instructions which represent a Lisp program in post-fixed notation. These instructions are easily simulated by Fortran subroutines. Once the subroutines are implemented in a computer it is a simple matter to manually transcribe Evalquote into a sequence of these pseudo-instructions and thus obtain a Lisp interpreter with a minimum of programming effort. The paper does not attempt to describe a complete and efficient Lisp interpreter; instead, it concentrates on the description of a minimal set of pseudo-instructions and their actions.
Similar content being viewed by others
References
E. C. Berkeley and D. G. Bobrow, (eds.),The Programming Language LISP: Its Operation and Applications, M.I.T. Press, 1967.
J. McCarthy et al.,LISP 1.5 Programmers Manual, M.I.T. Press, 1969.
B. Randell and L. J. Russell,ALGOL 60 Implementation, Academic Press, 1964.
H. Schorr and W. M. Waite,An Efficient Machine-Independent Procedure for Garbage Collection in Various List Structures, Comm. ACM, 10, 8, August 1967.
C. Weissman,LISP 1.5 Primer, Dickenson Publishing Co., Belmont, California, 1967.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Cohen, J., Zuckerman, C. Evalquote in simple Fortran: A tutorial on interpreting Lisp. BIT 12, 299–317 (1972). https://doi.org/10.1007/BF01932302
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF01932302