The art of computer programming, volume 1 (3rd ed.): fundamental algorithms
The art of computer programming, volume 1 (3rd ed.): fundamental algorithms
Continuation-Based Program Transformation Strategies
Journal of the ACM (JACM)
List processing in real time on a serial computer
Communications of the ACM
Communications of the ACM
A time- and space-efficient garbage compaction algorithm
Communications of the ACM
An exercise in proving parallel programs correct
Communications of the ACM
An efficient, incremental, automatic garbage collector
Communications of the ACM
A model and stack implementation of multiple environments
Communications of the ACM
Compact list representation: definition, garbage collection, and system implementation
Communications of the ACM
An efficient machine-independent procedure for garbage collection in various list structures
Communications of the ACM
Introduction to VLSI Systems
Definitional interpreters for higher-order programming languages
ACM '72 Proceedings of the ACM annual conference - Volume 2
ACM '77 Proceedings of the 1977 annual conference
Design of LISP-based Processors, or SCHEME: A Dielectric LISP, or Finite Memories Considered Harmful, or LAMBDA: The Ultimate Opcode
A LISP Garbage Collector Algorithm Using Serial Secondary Storage
A LISP Garbage Collector Algorithm Using Serial Secondary Storage
An Interpreter for Extended Lambda Calculus
An Interpreter for Extended Lambda Calculus
The Art of the Interpreter or, The Modularity Complex (Parts Zero, One, and Two)
The Art of the Interpreter or, The Modularity Complex (Parts Zero, One, and Two)
MATHEMATICAL LOGIC FOR COMPUTER SCIENTISTS
MATHEMATICAL LOGIC FOR COMPUTER SCIENTISTS
Computation: finite and infinite machines
Computation: finite and infinite machines
LISP 1.5 Programmer's Manual
Revised report on the algorithmic language scheme
ACM SIGPLAN Notices
Survey on special purpose computer architectures for AI
ACM SIGART Bulletin
Pascal implementation of a LISP interpreter
ACM SIGPLAN Notices
Locality, causality and continuations
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
KOALA: a cost effective workstation for fast LISP interpretation
Proceedings of the 1986 ACM SIGSMALL/PC symposium on Small systems
Testing and Debugging Custom Integrated Circuits
ACM Computing Surveys (CSUR)
Deriving Target Code as a Representation of Continuation Semantics
ACM Transactions on Programming Languages and Systems (TOPLAS)
Revised report on the algorithmic language scheme
ACM SIGPLAN Lisp Pointers
µ3L: An HLL-RISC processor for parallel execution of FP-language programs
ISCA '82 Proceedings of the 9th annual symposium on Computer Architecture
Direct execution of lisp on a list_directed architecture
ASPLOS I Proceedings of the first international symposium on Architectural support for programming languages and operating systems
The implementation of procedurally reflective languages
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
ACM SIGPLAN Lisp Pointers
Hi-index | 48.22 |
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.