Design of a LISP-based microprocessor
- 1 November 1980
- journal article
- Published by Association for Computing Machinery (ACM) in Communications of the ACM
- Vol. 23 (11) , 628-645
- https://doi.org/10.1145/359024.359031
Abstract
We present a design for a class of computers whose “instruction sets” are based on LISP. LISP, like traditional stored-program machine languages and unlike most high-level languages, conceptually stores programs and data in the same way and explicitly allows programs to be manipulated as data, and so is a suitable basis for a stored-program computer architecture. LISP differs from traditional machine languages in that the program/data storage is conceptually an unordered set of linked record structures of various sizes, rather than an ordered, indexable vector of integers or bit fields of fixed size. An instruction set can be designed for programs expressed as trees of record structures. A processor can interpret these program trees in a recursive fashion and provide automatic storage management for the record structures. We discuss a small-scale prototype VLSI microprocessor which has been designed and fabricated, containing a sufficiently complete instruction interpreter to execute small programs and a rudimentary storage allocator.Keywords
This publication has 12 references indexed in Scilit:
- Can programming be liberated from the von Neumann style?Communications of the ACM, 1978
- A time- and space-efficient garbage compaction algorithmCommunications of the ACM, 1978
- List processing in real time on a serial computerCommunications of the ACM, 1978
- An exercise in proving parallel programs correctCommunications of the ACM, 1977
- Viewing control structures as patterns of passing messagesArtificial Intelligence, 1977
- An efficient, incremental, automatic garbage collectorCommunications of the ACM, 1976
- A model and stack implementation of multiple environmentsCommunications of the ACM, 1973
- Definitional interpreters for higher-order programming languagesPublished by Association for Computing Machinery (ACM) ,1972
- Compact list representationCommunications of the ACM, 1969
- LISP 1.5 PROGRAMMER'S MANUALPublished by Defense Technical Information Center (DTIC) ,1962