Performance and Evaluation of LISP Systems

Abstract
This final report of the Stanford Lisp Performance Study, conducted over a three year period by the author, describes implementation techniques, performance tradeoffs, benchmarking techniques, and performance results for all of the major Lisp dialects in use today. A popular highlevel programming language used predominantly in artificial intelligence, Lisp was the first language to concentrate on working with symbols instead of numbers. Lisp was introduced by John McCarthy in the early 1960s (McCarthy's LISP 1.5 Programmer's Manual published in 1962 is available in paperback from The MIT Press) and its continuous development has enabled it to remain dominant in artificial intelligence. Performance and Evaluation of LISP Systems is the first book to present descriptions on the Lisp implementation techniques actually in use and can serve as a handbook to the implementation details of all of the various current Lisp expressions. It provides detailed performance information using the tools of benchmarking (the process of utilizing standardized computer programs to test the processing power of different computer systems) to measure the various Lisp systems, and provides an understanding of the technical tradeoffs made during the implementation of a Lisp system. The study is divided into three major parts. The first provides the theoretical background, outlining the factors that go into evaluating the performance of a Lisp system. The second part presents the Lisp implementations: MacLisp, MIT CADR, LMI Lambda, S-I Lisp, Franz Lisp, MIL, Spice Lisp, Vax Common Lisp, Portable Standard Lisp, and Xerox D-Machine. A final part describes the benchmark suite that was used during the major portion of the study and the results themselves. Performance and Evaluation of Lisp Systems is included in the Computer Systems series, Research Reports and Notes, edited by Herb Schwetman.