History of LISP
paul@mcjones.org
http://www.mcjones.org/dustydecks/
Last updated January 8, 2010.
Abstract
The goal of this project is to locate source code, design documents, and other materials concerning the original LISP I/1.5 system, and as many of its follow-ons as possible. LISP was one of the earliest high-level programming languages and introduced many ideas such as garbage collection, recursive functions, symbolic expressions, and dynamic type-checking; it is still in use. This is a project of the Computer History Museum's Software Preservation Group to collect, preserve, and present historic software. The editor appreciates comments, suggestions, and donations of additional materials.
Contents
- Acknowledgements
- LISP I and LISP 1.5 for IBM 704, 709, 7090
- LISP 1.5 for CTSS
- LISP 1.5 for Univac M-460
- LISP 1.5 for AN/FSQ-32/V
- LISP 1.5 at Stanford
- SHARE LISP 1.5
- LISP 2
- LISP 1.5 for Univac 1108
- Basic PDP-1 Lisp
- LISP 1.5/1.6/MACLISP for PDP-6/10
- BBN LISP
- INTERLISP
- Stanford LISP 1.6
- IBM Lisp
- Multics Lisp (Multics MacLisp)
- Zetalisp for Lisp Machines
- Interlisp-D
- Scheme
- T
- New Implementation of Lisp (NIL), S-1 Lisp
- Spice Lisp
- Standard LISP, Portable Standard Lisp (PSL)
- Cambridge Lisp
- Uppsala Lisp
- ECSD Lisp
- VLISP
- Le_Lisp
- Franz Lisp
- UtiLisp
- Common Lisp
- EuLisp
- Connection Machine *Lisp (StarLisp)
- ISLISP
- Emacs Lisp
- Bibliographies
- Papers about LISP and its history
- Biographies, interviews, and oral histories
- Lisp periodicals
- Correspondence and memoranda
- Photographs
- Audio/video
- Related resources
Acknowledgements
- Bob Abeles, Paul W. Abrahams, John R. Allen, Jeff Barnett, Bruce G. Baumgart, Alan Bawden, Fred Blair, Robert Brayton, Daniel G. Bobrow, Phil Budne, Jérôme Chailloux, Rich Cornwell, L. Peter Deutsch, Deborah Douglas, Daniel J. Edwards, Edward Feigenbaum, Robert R. Fenichel, Tayssir John Gabbour, Richard P. Gabriel, Richard Greenblatt, Jack Harper, Timothy P. Hart, Zane H. Healy, Charles L. Hedrick, Al Kossow, Alan Kotok, Paco Linux, Emílio C. Lopes, Klim Maling, Larry Masinter, J.P. Massar, Blake McBride, John McCarthy, Jim Meehan, The MIT Press, David A. Moon, Joel Moses, Daniel L. Murphy, Marvin L. Minsky, Eric Norman, Julian Padget, Kent M. Pitman, Lynn H. Quam, Thomas C. Rindfleisch, SDF Public Access UNIX System (TWENEX.ORG), Stephen R. Russell, Robert A. Saunders, Tim Shoppa, Olin Sibert, Guy L. Steele Jr., Herbert Stoyan, Bob Supnik, Tetsuro Tanaka, Graham Toal, Björn Victor, Eiiti Wada, JonL White.
LISP I and LISP 1.5 for IBM 704, 709, 7090
From the Preface to the LISP 1.5 Programmer's Manual [McCarthy et al. 1962]:
"The overall design of the LISP Programming System is the work of John McCarthy and is based on his paper 'Recursive Functions of Symbolic Expressions and Their Computation by Machine' which was published in Communications of the ACM, April 1960.
This manual was written by Michael I. Levin.
The interpreter was programmed by Stephen R. Russell and Daniel J. Edwards.
The print and read programs were written by John McCarthy, Klim Maling, Daniel J. Edwards, and Paul W. Abrahams.
The garbage collector and arithmetic features were written by Daniel J. Edwards.
The compiler and assembler were written by Timothy P. Hart and Michael I. Levin.
An earlier compiler was written by Robert Brayton.
The 'LISP I Programmer's Manual,' March 1, 1960, was written by Phyllis A. Fox.
Additional programs and suggestions were contributed by the following members of the Artificial Intelligence Group of the Research Laboratory of Electronics: Marvin L. Minsky, Bertram Raphael, Louis Hodes, David M.R. Park, David C. Luckham, Daniel G. Bobrow, James R. Slagle, and Nathaniel Rochester."
Source code
System
- LISP system assembly listing. "FIELD TEST ASSEMBLY OF LISP 1.5 SEPTEMBER 1961",
labeled "Bonnie's Birthday Assembly". Science and Technology Collection, M.I.T. Museum,
Cambridge, Massachusetts, catalog number 1993.053, donated by Timothy P.
Hart.
- Jack Harper. Scan of listing. PDF (16MB)
- Pascal Bourguignon. Reconstruction of assembly source code. .tar.gz at informatimago.com (background at Dusty Decks)
- Rich Cornwell and Bob Abeles. Proofread reconstruction of assembly source code. unpacked
- This should be runnable under SIMH or Rich's variation of SIMH for the IBM 704, but it still needs some debugging by someone with Lisp 1.5 experience or a desire to learn. Contact paul@mcjones.org if you are interested.
- See also LISP 1.5 for CTSS, below.
- LISP system assembly listing. Steve Russell may have in his
archives "a listing of some version of 704/709/7090 Lisp". He says he'd
be happy to donated his Lisp artifacts to the Computer History Museum,
but it will be some time before he is able to search the depths of his
archives.
[Personal communication to Paul McJones, 16 March 2005.] - LISP distribution tape listing. Listing of source distribution tape sent by
Timothy P. Hart to John Allen. Source card images for LISP 1.5 plus the
initial library written in LISP, including test cases, the compiled compiler,
etc. Annotations by Allen pertaining to the conversion to a slightly different
version of the machine, November 1964. Property of John R.
Allen.
[Personal communication to Paul McJones, June 11, 2005.]
Applications
The only LISP 1.5 application source code encountered to date has been in various publications.
- John McCarthy, Paul W. Abrahams, Daniel J. Edwards, Timothy P. Hart, Michael I. Levin.
Lisp 1.5 Programmer's Manual. MIT Press, Cambridge, Massachusetts, 1962.
PDF [Posted here
by permission of
The MIT Press]
- Chapter VIII. A Complete LISP Program - the Wang Algorithm for the Propositional Calculus. PDF
- Berkeley and Bobrow, editors. The Programming Language Lisp : Its Operation and Applications.
Information International, Inc., March 1964, and The MIT Press, April 1966.
PDF (12MB)
[Posted here by permission of The MIT Press]
- Daniel G. Bobrow. The LISP Program for METEOR. Pages 249-259.
PDF
- See also: Daniel G. Bobrow. METEOR: A LISP Interpreter for String Transformations. Pages 161-190. PDF
- See also: Daniel G. Bobrow. METEOR: A LISP Interpreter for String
Transformations. Memo 51, Artificial Intelligence Projects, RLE and MIT
Computation Center, April 24, 1963, 41 pages.
PDF at
MIT
Earlier version of the two METEOR articles in Berkeley and Bobrow.
- Malcolm Pivar and Elaine Gord. The LISP Programs for Inductive Inference on
Sequences. Pages 260-289.
PDF
- See also: Malcolm Pivar and Mark Finkelstein. Automation, Using LISP, of Inductive Inference on Sequences. Pages 125-136. PDF
- William Henneman. The LISP Program for the A-Language. Pages 318-325.
PDF
- See also: An Auxiliary Language for More Natural Expression – the A-Language. Pages 239-248. PDF
- Daniel G. Bobrow. The LISP Program for METEOR. Pages 249-259.
PDF
- Lewis Mark Norton. ADEPT – A Heuristic
Program for Proving Theorems of Group Theory. Ph.D. Thesis, MIT-LCS-TR-033,
Project MAC, Massachusetts Institute of Technology, September 1966, 178
pages.
PDF at MIT
Appendix III lists the source for ADEPT.
- W.A. Martin. "Symbolic Mathematical Laboratory. Ph.D. Thesis,
MIT-LCS-TR-036, Project MAC, Massachusetts Institute of Technology, January 1967. Online at dspace.mit.edu
Includes source listing.
- Joel Moses. Symbolic Integration. Ph.D. Thesis, MIT-LCS-TR-047, Project
MAC, Massachusetts Institute of Technology, December 1967, 268 pages.
- Original MIT scan, with missing pages replaced. PDF
- Grayscale scan (200dpi?) PDF at MIT
Appendix F lists the source for SIN (symbolic integration) and SOLDIER (solutions of ordinary differential equations routine).
- Marvin Minsky, editor. Semantic Information Processing. MIT Press, 1968.
- Daniel G. Bobrow. Natural Language Input for a Computer Problem-Solving System. Pages 146-226. Appendix 3.2 is a listing of the STUDENT program.
- Fischer Black. A Deductive Question Answering System. Pages 354-402. Appendix 6.1 is a listing of a basic version of the program.
Documentation
- S. Russell. Writing and Debugging Programs. Memo 6, Artificial Intelligence Project, RLE and MIT Computation Center. No date, 7 pages. PDF at MIT
- J. McCarthy. Notes on the Compiler. Memo 7, Artificial Intelligence Project, RLE and MIT Computation Center. No date, 2 pages. PDF at MIT
- J. McCarthy. Recursive Functions of Symbolic Expressions and Their Computation by Machine. Memo 8, Artificial Intelligence Project, RLE and MIT Computation Center, March 13, 1959, 19 pages. PDF at MIT
- S.R. Russell. Explanation of Big "P" as of March 20, 1959. Memo 9, Artificial Intelligence Project, RLE and MIT Computation Center, 4 pages. PDF at MIT
- K. Maling. The LISP Differentiation Demonstration Program. Memo 10, Artificial Intelligence Project, RLE and MIT Computation Center, no date, 6 pages. PDF at MIT
- J. McCarthy. Recursive Functions of Symbolic Expressions and Their
Computation by Machine. Memo 11, Artificial Intelligence Project, RLE and MIT
Computation Center, March 30, 1959, 17 pages.
PDF at
MIT
"This memorandum is a continuation of Memo 8"
- John McCarthy. Programs in LISP. Memo 12, Artificial Intelligence Project,
RLE and MIT Computation Center, no date, 7 pages.
PDF at
MIT
"This memo depends only on the RLE QPR [Quarterly Project Report?] No. 53 discussion of LISP. This takes the form of allowing functions to be described by programs including sequences of Fortran-like statements, e.g. y=cons[ff[subst[A;y;z]];(A,B)]"
- K. Maling. The Maling-Silver Read Program. Memo 13, Symbol Manipulation Language, Artificial Intelligence Project, RLE and MIT Computation Center, 7 pages, no date but appendix says "1-20-59". PDF at MIT
- J. McCarthy. The Wang Algorithm for the Propositional Calculus. Memo 14, Symbol Manipulation Language, Artificial Intelligence Project, RLE and MIT Computation Center, 13 pages, no date. PDF at MIT
- Daniel J. Edwards. LISP II Garbage Collector. Memo 19, Artificial Intelligence Project, RLE and MIT Computation Center, no date, 2 pages. PDF at MIT
- J. McCarthy, R. Brayton, D. Edwards, P. Fox, L. Hodes, D. Luckham, K. Maling,
D. Park and S. Russell. LISP I Programmer's Manual. Computation Center and
Research Laboratory of Electronics, Massachusetts Institute of Technology, March
1, 1960.
- Copy 1: Computer History Museum Lot X????.200?, George Michael donation. PDF at bitsavers.org
- Copy 2: Science and Technology Collection, M.I.T. Museum, Cambridge, Massachusetts, catalog number 1993.053, donated by Timothy P. Hart. Missing cover and Acknowledgements. PDF
- Paul W. Abrahams. Character-handling Facilities in the LISP System. Memo 22A[?], Artificial Intelligence Project, RLE and MIT Computation Center, January 27, 1961, 12 pages. PDF at MIT
- Robert Brayton. Trace-Printing for Compiled Programs. Memo 23, Artificial Intelligence Project, RLE and MIT Computation Center, no date, 2 pages. PDF at MIT
- Michael Levin. Arithmetic in LISP 1.5. Memo 24, Artificial Intelligence
Project, RLE and MIT Computation Center, April 28, 1961, 8 pages.
PDF
at MIT
"As of present, the following parts of LISP 1.5 are working. This is an excerpt from the forth coming LISP 1.5 Programmer's Manual."
- Anonymous. Error Stops. Memo 25, Artificial Intelligence Project, RLE and MIT Computation Center, May 10, 1961, 1 page. PDF at MIT
- Michael Levin. LISP 1.5 Programmer's Manual [Errata]. Memo 28, Artificial
Intelligence Project, RLE and MIT Computation Center, no date, 2 pages
PDF at
MIT
"The manual is intended to apply to a version of LISP 1.5 called 'LISP 1.5 Export A' which has not yet been issued. LISP 1.5 systems preceding this version differ in certain details."
- John McCarthy. A Basis for a Mathematical Theory of Computation. Memo 31,
Artificial Intelligence Project, RLE and Computation Center, Massachusetts
Institute of Technology, Cambridge 39, Massachusetts, January 1962, 33 pages.
PDF at
MIT
"This paper is a corrected version of the paper of the same title given at the Western Joint Computer Conference, May 1961. A tenth section discussing the relations between mathematical logic and computation has been added."
- John McCarthy. On Efficient Ways of Evaluating Certain Recursive Functions. Artificial Intelligence Memo No. 32, Massachusetts Institute of Technology, Project MAC, no date, 5 pages. PDF at MIT
- John McCarthy. A New Eval Function. Artificial Intelligence Memo No. 34, Massachusetts Institute of Technology, Project MAC, no date, 14 pages. PDF at MIT
- Anonymous. LAP (LISP Assembly Program). Memo 35, Artificial Intelligence Project, RLE and MIT Computation Center, no date, 4 pages. PDF at MIT
- T. Hart and M. Levin. The New Compiler. Memo 39, Artificial Intelligence
Project, RLE and MIT Computation Center, no date (circa 1962?), 4 pages.
PDF at
MIT
"This memo introduces the brand new LISP 1.5 Compiler designed and programmed by Tim Hart and Mike Levin. It is written entirely in LISP and is the first compiler that has ever compiled itself by being executed interpretively."
- J. McCarthy, M. Minsky, P. Abrahams, R. Brayton, D. Edwards, L. Hodes, D. Luckham, M. Levin, D. Park, and T. Hart. Lisp 1.5 Programmer's Manual. Computation Center and Research Laboratory of Electronics, Massachusetts Institute of Technology, July 14, 1961. Copy belonging to Jim Meehan. The cover has handwritten names McCarthy, B. Raphael (crossed out), and [Fred M.] Tonge. PDF
- John McCarthy, Paul W. Abrahams, Daniel J. Edwards, Timothy P. Hart, Michael I. Levin. Lisp 1.5 Programmer's Manual. MIT Press, Cambridge, Massachusetts, 1962. PDF [Posted here by permission of The MIT Press]
- Timothy P. Hart. MACRO Definitions for LISP. Memo 57, Artificial Intelligence Project, RLE and MIT Computation Center, October 22[?], 1963, 4 pages. PDF at MIT
- M.L. Minsky. A LISP Garbage Collector Algorithm Using Serial Secondary
Storage. Memo 58 (Revised), Artificial Intelligence Project and Memorandum
MAC-M-129, Project MAC, Massachusetts Institute of Technology, December 27,
1963, 4 pages (out of order).
PDF at
MIT
"Paper to be presented at the First International LISP Conference, Mexico City, Mexico, December 30 – January 3, 1964."
[Was this algorithm being contemplated for 7090 LISP on CTSS?]
- Daniel J. Edwards. Secondary Storage in LISP. Memo 63, Artificial
Intelligence Project and Memorandum MAC-M-128, Project MAC, Massachusetts
Institute of Technology, December 27, 1963, 4 pages.
PDF at
MIT
"Paper to be presented at the First International LISP Conference, Mexico City, Mexico, December 30 – January 3, 1964."
- Timothy P. Hart and Michael I. Levin. LISP Exercises. Memo 64, Artificial
Intelligence Project and Memorandum MAC-M-134, Project MAC, Massachusetts
Institute of Technology, January 24, 1964, 27 pages.
PDF at
MIT
A version of this appears in Berkeley and Bobrow.
- Clark Weissman. LISP 1.5 Primer. Dickenson Publishing Company, Inc., Belmont, California, 1967. PDF
Applications
- Anthony Valiant Phillips. A Question-Answering Routine. Memo 16, Artificial Intelligence Project, RLE and MIT Computation Center, May 21, 1960, 20 pages. PDF at MIT
- John McCarthy. Programs with Common Sense. Memo 17, Artificial
Intelligence Project, RLE and MIT Computation Center, no date, 9 pages.
"This paper was presented at a Symposium on The Mechanization of Thought Processes, which was held at the National Physical Laboratory, Teddington, Middlesex, England from 24th-27th November 1958. The papers and the discussions were published by H.M.S.O. in the Proceedings of the Symposium. This paper should not be reproduced without the permission of the author and of the Secretary, National Physical Laboratory."
- Louis Hodes. Some Results from a Pattern Recognition Program using LISP. Memo 18, Artificial Intelligence Project, RLE and MIT Computation Center, no date, 3 pages. PDF at MIT
- John McCarthy. Puzzle Solving Program in LISP. Memo 20, Artificial Intelligence Project, RLE and MIT Computation Center, no date, 2 pages. PDF at MIT
- Paul W. Abrahams. The Proofchecker. Memo 21, Artificial Intelligence Project, RLE and MIT Computation Center, January 25, 1961, 21 pages. PDF at MIT
- Michael Levin. SIMPLIFY. Memo 27, Artificial Intelligence Project, RLE and MIT Computation Center, no date, 5 pages [missing pages 2 and 4]. PDF at MIT
- D.J. Edwards and T.P. Hart. The Alpha-Beta Heuristic. Memo 30 (revised),
Artificial Intelligence Project, RLE and MIT Computation Center, October 28,
1963, 5 pages.
PDF
at MIT
"(This is a revised version of The Tree Prune (TP) Algorithm, AI Memo 30, December 4, 1961.)"
- T.G. Evans. A Heuristic program to solve Geometry Analogy Problems. Memo 46, Artificial Intelligence Project, RLE and MIT Computation Center, October 24, 1962, 15 pages. PDF at MIT
- Bertram Raphael. Computer Representation of Semantic Information. Memo 49, Artificial Intelligence Project, RLE and MIT Computation Center, April 5, 1963, 12 pages. PDF at MIT
LISP 1.5 for CTSS
LISP 1.5 initially ran on the "bare machine" (with its own monitor called Overlord for handling tapes, reading and writing of core images, and taking dumps – see Appendix E of The Lisp 1.5 Programmer's Manual).
"We had a crisis in our research program in AI in the fall of 1965. Those of us who were using the LISP system on the IBM 7094 at Project MAC would soon be unable to use it further because the time-sharing system, CTSS, was being modified. CTSS and its follow-on system, MULTICS, were the key projects at MAC. The head of these projects was Prof. Fernando Corbató, known as Corby. Some of the students said “Project MAC” stood for Minsky Against Corby, although I believe that their relationship was quite cordial. I would later work closely with Corby on academic administration. He was a superb systems thinker, as his work on CTSS and MULTICS clearly showed.
All the people who had initially developed LISP for the IBM 7094 machine had by then left MIT; due to Minsky’s management style there was no one in charge of modifying LISP so that it would continue to run on CTSS. Since I needed to use the system for my research, I decided to make the modifications myself. I found an old listing of the assembly code for LISP which contained hand-written comments on errors and missing features written by the original group of programmers. I used this information to make patches in the binary version of LISP. In a weekend’s worth of work I was able to get the LISP system to operate under the modified version of CTSS." [Joel Moses. My Life.]
- F.J. Corbató, M.M. Daggett, R.C. Daley, R.J Creasy, J.D. Hellwig, R.H. Orenstein, and L.K. Korn. The Compatible Time-Sharing System : A Programmer's Guide. The M.I.T. Press, 1963. PDF at bitsavers.org
Source code
- LISP system assembly listing. CTSS LISP 1.5. Belonged to Joel
Moses; he notes "It had handwritten annotations by some of the original
group, possibly including Evans and Hart." Unfortunately Joel believes
his listing was lost during one of his many interoffice moves.
[Personal communication to Paul McJones, 12 March 2005.] - LISP system assembly listing. CTSS LISP 1.5, 7 February 1966. Donated by Robert R. Fenichel.
Documentation
- Richard A. Robnett. Suggestions for LISP Time-Sharing System. Memo 50, Artificial Intelligence Project, RLE and MIT Computation Center, April 3, 1963, 3 pages. PDF at MIT
- William Martin and Timothy Hart. Revised User's Version: Time Sharing LISP. Memo 67 (Revised), Artificial Intelligence Project, Memorandum MAC-M-153 (Revised), Project MAC, Massachusetts Institute of Technology, April 15, 1964, 8 pages. PDF at MIT
- T. Hart. CTSS LISP NOTICE – Supplement to A.I. Memo No. 67. Memo 74, Artificial Intelligence Project, Memorandum MAC-M-206, Project MAC, Massachusetts Institute of Technology, December 7, 1964, 4 pages. PDF at MIT
- Robert R. Fenichel and Joel Moses. A New Version of CTSS LISP. Artificial
Intelligence Memo 93, Project MAC Memorandum MAC-M-296, Massachusetts Institute
of Technology, February 2, 1966, 13 pages,
PDF at
MIT
"Summary: A new version of CTSS LISP is now available. The new system provides additional data storage and several new functions and constants. The I/O capabilities, EXCISE, the error comments, and several routines have been improved. Much irrelevant code and many bugs have all been removed.
FAP source decks and BCD listings are available. The decks are organized so as to ease the job of assembling private LISP systems in which unneeded features are abset.
Without reassembling, the user can create a private LISP system in which the data storage space has been arbitrarily allocated among binary program space, the push-down list, full word space, and free storage.
It is assumed that the reader is familiar with the old version of LISP as described in AI Memos 67 and 74 (MAC M-153 and M-206)."
Applications
- Warren Teitelman. EDIT and BREAK functions for LISP. Artificial Intelligence
Memo 84, Memorandum MAC-M-264, Project MAC, Massachusetts Institute of
Technology, no date, 31 pages.
PDF at
MIT
"This memo describes some LISP functions which have been found to be extremely useful in easing the often painful process of converting the initial versions of LISP programs into final debugged code. They are part of a much larger system currently being developed but may be used as two independent packages. The break package contains a more sophisticated break function than that in the current CTSS version of LISP, which includes facilities for breaking on undefined functions as well as SUBRS and FEXPRS, plus a selective TRACE feature. The Edit package combines many of the features of the CTSS 'ed' with a knowledge of the structure of LISP (e.g., it knows about balancing parentheses). It eliminates the need to leave a LISP system to edit a function, and therefore one may edit even when track quote is exhausted. Edit will update a user's file upon request by constructing a new file containing all of the latest definitions of the functions in that file, even where some of them may currently be in the machine in compiled form."
- William A. Martin. Syntax and Display of Mathematical Expressions. Memo 85,
Artificial Intelligence Project, Memorandum MAC-M-257, Project MAC,
Massachusetts Institute of Technology, July 29, 1965, 22 pages.
PDF at
MIT
Describes a picture compiler written in LISP running on 7090 CTSS LISP that communicated with a display program written in LISP running on a PDP-6.
- Warren Teitelman. FLIP – A Format List Processor. Artificial Intelligence
Memo 87, Memorandum MAC-M-263, Project MAC, Massachusetts Institute of
Technology, 1966?, 65 pages.
PDF at
MIT
"This memo describes a notation and a programming language for expressing, from within a LISP system, string manipulations such as those performed in COMIT. ..."
- Adolfo Guzmán and Harold McIntosh. A Program Feature for CONVERT.
Memo 95, Artificial Intelligence Project, Memorandum MAC-M-305, Project MAC,
Massachusetts Institute of Technology, April 1966, 18 pages.
PDF
at MIT
"A program feature has been constructed for CONVERT, closely modeled after the similar facility found in many versions of LISP."
- Adolfo Guzmán. Polybrick: Adventures in the Domain of Parallelepipeds : A world without perspective. Artificial Intelligence Memo 96, Project MAC Memorandum MAC-M-308, May 1966, 41 pages. PDF at MIT
- Joel Moses. Symbolic Integration. AI Memo 97, Artificial Intelligence
Project, MAC-M-310, Project MAC, Massachusetts Institute of Technology, June
10, 1966, 17 pages.
PDF
at MIT
"A program has been written which is capable of integrating all but two of the problems solved by Slagle's symbolic integration program SAINT. In contrast to SAINT, it is a purely algorithmic program and it has achieved running times two to three orders of magnitude faster than SAINT."
- Joel Moses. Symbolic Integration II. AI Memo 97a, Artificial
Intelligence Project, MAC-M-327, Project MAC, Massachusetts Institute of
Technology, October 13, 1966, 12 pages.
PDF
at MIT
"The current program can integrate all the problems which were solved by SAINT and also the two problems attempted by it and not solved."
- Adolfo Guzmán and Harold V. McIntosh. CONVERT. Memo 99, Artificial
Intelligence Project, Memorandum MAC-M-316, Project MAC, Massachusetts
Institute of Technology, June 1966, 43 pages.
PDF
at MIT
Also published in Communications of the ACM,
Volume 9, Issue 8, August 1966, pages 604-615. ACM DL
"A pattern-driven symbolic manipulation language and its preprocessor (an interpreter) are presented."
- Harold V. McIntosh and Adolfo Guzmán. A Miscellany of CONVERT
Programming. Artificial Intelligence Memo 130, Project MAC Memorandum
MAC-M-346, Massachusetts Institute of Technology, April 1967, 41 pages.
PDF
at MIT
"A collection of examples to illustrate CONVERT."
- Carl Hewitt. PLANNER: A Language for Proving Theorems. Artificial
Intelligence Memo 137, Project MAC, Massachusetts Institute of Technology,
July 1967, 65 pages.
PDF
at MIT
Describes SCHEMATISE, "a proposal for a program that proves very elementary theorems through the use of planning", MATCHLESS, "a pattern matching program written in LISP ... most succinctly described as a cross between SNOBOL and CONVERT", and PLANNER, "a powerful tree searching language in which we could write SCHEMATISE and other tree searching theorem proving procedures".
LISP 1.5 for Univac M-460
The Univac M-460 was a military version of Univac 490. The LISP system was written by Timothy P. Hart and Thomas G. Evans at Air Force Cambridge Research Laboratories.
The system was bootstrapped from Lisp 1.5 on the IBM 7090 using a cross-compiler and a small amount of machine language code for the lowest levels of the Lisp implementation. See:
- Timothy P. Hart and Thomas G. Evans. Notes on Implementing LISP for the
M-460 Computer. March 1964, pages 191-203 in Berkeley and Bobrow.
PDF
'This article describes the process used to implement LISP 1.5 on the Univac M 460 (an early military version of the Univac 490). This machine, which has been available to us on an open-shop basis, has 32000 register of 30-bit, 8 microsecond memory. It has an instruction set which is quite convenient for LISP, e.g., it is possible to load an index register (of which, incidentally, there are seven) from either the left or right half of the word addressed by the same index.'
Includes LISP source code of interpreter.
LISP 1.5 for AN/FSQ-32/V
The AN/FSQ-32/V was a military computer with 48-bit words; only one was built and it belonged to System Development Corporation, Santa Monica, California. The LISP system was written by Robert Saunders, with assistance from Tim Hart, Dan Edwards, Mike Levin, John McCarthy, and Steve Russell.
"The Q-32 implementation was the first LISP that did not run on an interpreter: all code was compiled before execution. Someone subsequently wrote an interpreter for it, but I have no idea why other than for the fun and instruction of doing it. [As stated in Berkeley and Bobrow], the LISP was developed on Stanford's 709/90 system, compiled there, and taken to Santa Monica as machine instructions on magnetic tape. Some fundamental code (e.g. CONS, and later the garbage collector) was done in machine language on the Q-32 itself."
[Robert A. Saunders, personal communication to Paul McJones, May 6, 2005.]
- Robert A. Saunders. The LISP System for the Q-32
Computer. March 1964, pages 220-238 in Berkeley and Bobrow.
PDF
This paper says "Assistance was also given by D. Edwards and M. Levin of the Massachusetts Institute of Technology, and Prof. J. McCarthy and S. Russell of Stanford University. Computer time on the Stanford 7090 and PDP-1 was used in conjunction with Stanford's contract with Advanced Research Projects Agency for research in time sharing and artificial intelligence." However Saunders now says "The Stanford PDP-1 played no role whatever in the Lisp port. I am at a loss to explain any claim to the contrary. All the work was done on the
709/90/94 system, using punched cards." Russell concurs.
[Personal communication to Paul McJones, 5/16/2005] - Robert A. Saunders. The LISP Listing for the Q-32 Compiler, and Some Samples. March 1964, pages 290-318 in Berkeley and Bobrow. PDF
- S.L. Kameny. Input-Output File and Library Functions: the Q-32 LISP 1.5 Mod. 2.5 System, TM-2337/102/00, 1965 September 22. NBS# 6523059. (Box 335, folder 3)
- S.L. Kameny. LISP 1.5 Reference Manual for Q-32, TM-2337/101/00, 1965
August 9.
- United States National Bureau of Standards Collection of Computer Literature, NBS# 6523060. (Box 335, folder 4). http://www.cbi.umn.edu/collections/inv/cbi00032_3.html
- Also cited by Blair 1971.
- S.L. Kameny, G.P. DeFlorio, and A.H. Vorhaus. General-Purpose Display System,
SP-1688, September 23, 1964. NBS# 6421245.
- United States National Bureau of Standards Collection of Computer Literature, NBS# 6421245. (Box 291, folder 3). http://www.cbi.umn.edu/collections/inv/cbi00032_3.html
- S.L. Kameny and C. Weissman. Q-32 LISP 1.5 MOD. 2.6 SYSTEM: Operating
System, Input-Output, File, and Library Functions. TM-2337/103/00, 1966
April 11.
- United States National Bureau of Standards Collection of Computer Literature, NBS# 6623332. (Box 361, folder 5). http://www.cbi.umn.edu/collections/inv/cbi00032_3.html
LISP 1.5 at Stanford
There was LISP 1.5 work at Stanford on the IBM 7090 or 7094. [Steele and Gabriel 1993] say "The PDP-1 Lisp at Stanford was implemented by John McCarthy and Steve Russell." However Stephen Russell says:
"I sure don't remember anything about that. ...
While I was at Stanford, I did some work on 7090 Lisp, but worked primarily on getting the PDP-1 and PDP-6 systems to run, and keeping them running. I didn't have much to do with the PDP-6 Lisp.
Since the PDP-1 system was used as a multi-user system with only 4k PDP-1 words per user, and very non-standard IO, I don't think that it ever ran PDP-1 Lisp."
[Personal communication to Paul McJones, May 15, 2005]
- Horace Enea. Clock Function for LISP 1.5. AIM-4, 2 pages, August 1963.
- H. Enea and D. Wooldridge. Algebraic Simplication. Memo AIM-5, Stanford Artificial Intelligence Laboratory, August 1963.
- S.R. Russell. Improvements in LISP Debugging. Memo AIM-10, Stanford University Artificial Intelligence Project, December 18, 1963, 3 pages.
- D. Wooldridge. An Algebraic Simplify Program in LISP. Memo AIM-11, Stanford Artificial Intelligence Laboratory, December 1963.
- Dean E. Wooldridge. The New LISP System (LISP 1.55). Stanford University Artificial Intelligence Project, AIM-13, February 1964, 4 pages. NTIS Order Number AD-785 047/2
- Jan Hext. An expression input routine for LISP. Memo No. 18, Stanford Artificial Intelligence Project, July 24, 1964. [Cited by Hearn 1966.]
- Anthony Hearn. Computation of Algebraic Properties of Elementary
Particle Reactions Using a Digital Computer. Communications of the ACM,
Volume 9, Issue 8, August 1966, pages. 573-577.
ACM DL
This paper describes work performed in LISP on an IBM 7090. The help of Stephen Russell and Dean Wooldridge are acknowledged, along with "John McCarthy and the other members of the Stanford Artificial Intelligence Project".
- Horace Enea. MLISP. Technical Report No. CS 92, Computer Science
Department, School of Humanities and Sciences, Stanford University, March
14, 1968, 18 pages pages.
Online at
stanford.edu
Describes the version of the MLISP preprocessor for a LISP 1.5 system running on an IBM System/360 Model 67; see also [Smith 1969] for a version running on Stanford LISP 1.6 for the PDP-6/10.
SHARE LISP 1.5
Appendix I of Lisp 1.5 Programmer's Manual describes a SHARE distribution of LISP 1.5:
"The Artificial Intelligence Project at Stanford University has produced a version of LISP 1.5 to be distributed by SHARE. In the middle of February 1965 the system is complete and is available from Stanford. The system should be available from SHARE by the end of March 1965."
LISP 2
"The LISP 2 project was a collaboration of System Development Corporation and Information International Inc., and was initially planned for the Q32 computer, which was built by IBM for military purposes and which had a 48 bit word and 18 bit addresses, i.e., it was better than the IBM 7090 for an ambitious project. Unfortunately, the Q32 at SDC was never equipped with more than 48K words of this memory. When it became clear that the Q32 had too little memory, it was decided to develop the language for the IBM 360/67 and the Digital Equipment PDP-6 - SDC was acquiring the former, while III and M.I.T. and Stanford preferred the latter. The project proved more expensive than expected, the collaboration proved more difficult than expected, and so LISP 2 was dropped. From a 1970s point of view, this was regrettable, because much more money has since been spent to develop LISPs with fewer features. However, it was not then known that the dominant machine for AI research would be the PDP-10, a successor of the PDP-6. A part of the AI community, e.g. BBN and SRI made what proved to be an architectural digression in doing AI work on the SDS 940 computer." [McCarthy 1978]
Source code
- LISP 2 system. 80 character/line, 1 inch notebook. Property of Jeff Barnett.
- Core image generator for LISP 2. 80 character/line, 1 inch thick listing. Property of Jeff Barnett.
Documentation
Most of these items come from Stoyan. Compare with references in HOPL.
- J. McCarthy. Storage Conventions in LISP 2, Stanford University Artificial Intelligence Project, AIM-8 (Preliminary), Stanford, Sep. 26, 1963, 5 pages.
- Anonymous. LISP 2 Specifications Conference, Stanford University, Stanford, 1963.
- Michael Levin. Syntax of the New Language. Memo 68, Artificial Intelligence Project and Memorandum MAC-M-158, Project MAC, Massachusetts Institute of Technology, May 29, 1964, 14 pages. PDF at MIT
- Michael Levin. New Language Storage Conventions. Memo 69, Artificial Intelligence Project and Memorandum MAC-M-159, Project MAC, Massachusetts Institute of Technology, May 29, 1964, 8 pages. PDF at MIT
- R.W. Mitchell. LISP 2 Specifications Proposal, Stanford Artificial Intelligence Laboratory AIM-21, Stanford, Aug. 19, 1964, 12 pages. [From McCarthy, Stoyan, Stanford]
- Daniel G. Bobrow. The COMIT Feature in LISP 2. A I Memo 76, MAC Memo 219, LISP II Project Memo 2, February 18, 1965, 9 pages. PDF at MIT
- S.L. Kameny and L. Hawkinson. LISP II Internal Storage Conventions. Tech Memo 1965.
- S.L. Kameny and L. Hawkinson. LISP II Intermediate Language. Tech Memo 1965.
- Erwin Book. The LISP 2 Syntax Translator. Tech Memo TM-2710/331/00, System Development Corporation, Santa Monica, California, April 1966.
- Michael Levin and Edmund Berkeley. LISP 2 PRIMER, Tech Memo TM-2710/101/00 (draft), System Development Corporation, Santa Monica, California, July 1966.
- Donna Firth and S.L. Kameny. Syntax of LISP 2 Tokens. Tech Memo TM-2710/210/00, System Development Corporation, Santa Monica, California, August 1966.
- S.L. Kameny. LISP 2 Source Language Syntax Specifications for Syntax Translator. Tech Memo TM-2710/230/00, System Development Corporation, Santa Monica, California, December 1966.
- J.A. Barnett. SIM. An S-Expression Pattern-Matching Function. Tech Memo 1966.
- L. Hawkinson. Technical Progress Report LISP 2 (Period Ending July 6, 1966). Information International Inc., Dec. 7, 1966.
- M.V. Howard. Operating Instructions for the LISP 2 Supervisor in the LISP 2 Core Image. Tech Memo 1966.
- R. A. Saunders, J.A. Barnett, Donna Firth. The LISP 2 Compiler. Tech Memo 1966.
- Paul W. Abrahams. The Implementation of LISP 2. ??? 1967.
- Paul Abrahams. Conventions for writing LISP 2 syntax Equations. SBC Memorandum 1967.
- Paul W. Abrahams. LISP 2 Debugging. Tech Memo, 1967.
- Paul W. Abrahams. LISP 2 Specifications, Systems Development Corporation Technical report TM-3417/200/00, Santa Monica, California, 1967.
- Paul Abrahams, Donna Firth. LISP 2 Language Specifications. Tech Memo, 1967. [Same as previous item?]
- D. Anschultz. LISP 2 Compiler Register Counter and Code Generator Specifications. Tech Memo 1967.
- D. Anschultz. LISP 2 Compiler Machine Link Specifications. Tech Memo 1967.
- Jeff Barnett. LISP 2 Compiler Specifications. Tech Memo 1967.
- Jeff Barnett. LISP 2 Compiler Context Resolver Language and Processor Specifications. Tech Memo 1967.
- D. Crandell. LISP 2 Assembly Program (LAP) Specification. Tech Memo 1967.
- Donna Firth. LISP 2 Input/Output Specifications. Tech Memo 1967.
- L. Hawkinson. LISP 2 Core Image Generator (CIG) Specifications. Tech Memo 1967.
- L. Hawkinson. LISP 2 Internal Storage Conventions. TM-3147/550/00, 1967
April.
- United States National Bureau of Standards Collection of Computer Literature, NBS# 70400404. (Box 505, folder 16) http://www.cbi.umn.edu/collections/inv/cbi00032_3.html
- Stanley L. Kameny, Lowell Hawkinson, Clark Weissman, Jeffrey A. Barnett, Robert A. Saunders, Erwin Book, Donna Firth, Paul W. Abrahams. The Implementation of LISP 2. ??? 1967.
- Robert E. Long. LISP 2 Storage Management Paging of Binary Programs. Tech Memo 1967.
- P. Stygar. LISP 2 Garbage Collector Specifications. Tech Memo 1967.
- P. Stygar. LISP 2 Storage Management : The "Growing Pain" Problem. Tech Memo 1967.
Papers
- Paul W. Abrahams, Jeffrey A. Barnett, Erwin Book, Donna Firth, Stanley
L. Kameny, Clark Weissman, Lowell Hawkinson, Michael I. Levin and Robert A.
Saunders: The LISP 2 Programming Language and System, Proceedings Fall Joint
Computer Conference, Volume 29, AFIPS, 1966, pages 661-676.
PDF
Revision reflecting "certain minor changes that have been made to the language since the earlier publication." Technical Memorandum TM-3163, Information International Inc. and System Development Corporation, September 26, 1966, iv+28 pages. PDF
- Joel Weizenbaum. Review of "The LISP 2 Programming Language and System" by P.W. Abrahams et al. Review R67-22, IEEE Transactions on Electronic Computers, April 1967, pages 236-238. PDF
LISP 1.5 for Univac 1108
"In the late 1960's, Eric Norman of the University of Wisconsin - Madison developed a LISP 1.5 dialect for the Univac 1100 series of mainframes ... .
The LISP system developed by Norman consisted of approximately 5,000 lines of Univac assembly language for the interpreter and about 1,000 lines or so of LISP for the compiler. Several interesting applications were developed under or ported to Univac LISP including: Planner (an early planning language designed by Carl Hewitt of MIT; MLISP (an Algol 60-like dialect of LISP); Fuzzy (a system that worked with Fuzzy Logic); and several LISP utilities such as a Pretty Print package, a Math Library, a source Editor, and a Debugger. The original source code for all of the above items -- including the full interpreter and compiler -- are contained herein and are discussed in some detail." [Jack Harper, http://www.frobenius.com/univac.htm]
"At the time, the Computing Center here at Wisconsin had decided to purchase a Univac 1108. It couldn't be delivered yet, though. What we had was a remote card reader and printer to an 1108 up in Minneapolis. Just about all the interpreter was developed that way. That is, I submitted a deck of cards at night and picked up the listings the next day. When the 1108 arrived on campus, LISP was already running on it."
[Eric Norman, personal communication to Paul McJones, May 2005]
Source code and documentation
- Jack Harper. Univac 1100 LISP Documentation and Source Browser.
http://www.frobenius.com/source.htm
- Eric Norman. LISP Primer. http://www.frobenius.com/primer.htm
- Eric Norman and Rick LeFaivre. LISP Reference Manual. http://www.frobenius.com/reference.htm
- Eric Norman. Interpreter source code (ASM). Circa 1970? http://www.frobenius.com/interpreter.htm
- Eric Norman. Compiler source code (LISP). Circa 1970? http://www.frobenius.com/compiler.htm
- Rick LeFaivre. Description of 1108 MICRO-PLANNER. October 16, 1973. http://www.frobenius.com/plannerdoc.htm
- ???. MICRO-PLANNER source code (LISP). http://www.frobenius.com/planner.htm
- Jack Harper. First-Order Predicate Calculus Theorem Prover source code (LISP). Written for University of Houston EE-562 Artificial Intelligence class, Professor Samuel Lee, Spring 1974. http://www.frobenius.com/theorem.htm
- Rick LeFaivre. Fuzzy Logic source code (LISP). Circa 1976. http://www.frobenius.com/fuzzy.htm
- Eric Norman and Rick LeFaivre. Editor source code (LISP). Circa 1976. http://www.frobenius.com/editor.htm
- Eric Norman and Rick LeFaivre. Debugger source code (LISP). Circa 1976. http://www.frobenius.com/debugger.htm
- Eric Norman and Rick LeFaivre. PrettyPrint source code (LISP). Circa 1976. http://www.frobenius.com/prettyprint.htm
- Eric Norman and Rick LeFaivre. Arithmetic source code (LISP). Circa 1976. http://www.frobenius.com/arithmetic.htm
Basic PDP-1 LISP
L. Peter Deutsch developed PDP-1 LISP at M.I.T.:
"I wrote PDP-1 Lisp because I had a strong mathematical bent, I'd become intrigued with the Lisp language as a result of having somehow picked up a copy of the original Lisp 1.5 Programmer's Manual at MIT, and I wanted to have an interactive Lisp implementation to play with rather than having to submit card decks at the M.I.T. Computation Center. (Bear in mind that I was in high school at the time -- 1960-1964.) I'd ingratiated myself with the folks at the TX-0 (and later PDP-1) lab at M.I.T., so I had pretty free access to the machine there." [L. Peter Deutsch, quoted in lisp_doc.txt accompanying Bob Supnik's Software Kit]
Source code
- L. Peter Deutsch and Edmund C. Berkeley. The LISP Implementation for the PDP-1 Computer. March 1964, pages 326-375 in Berkeley and Bobrow. PDF
- Anonymous. LISP. Memo PDP-36, Electrical Engineering Department, Massachusetts Institute of Technology, May 20, 1966, 59 pages. PDF at bitsavers.org
- A machine-readable version has been recreated from the book, and made to run on Bob Supnik's SIMH PDP-1 simulator -- see http://simh.trailing-edge.com/software.html .
- Another online simulator written in Java -- see http://lcs.www.media.mit.edu/groups/el/projects/pdp1/ .
Describes Basic PDP-1 LISP in detail, including full PDP-1 assembly language source code.
Documentation and listing.
Documentation
- L. Peter Deutsch. PDP-1 Lisp. Research Laboratory for Electronics, Massachusetts Institute of Technology, 4 pages. PDF at bitsavers.org
"A program has been written for the PDP-1 providing a subset of the features of the LISP interpreter for the IBM 709/7090. This program, which contains no known bugs, will run on any PDP-1 with automatic divide. On machines with more than 4K of memory, it must be run in memory field 0.
It is assumed that the reader is familiar with 709 LISP in general and with the LISP 1.5 Programmer's Manual in particular."
LISP 1.5/1.6/MACLISP for PDP-6/10
Richard Greenblatt arrived at M.I.T. in the Fall of 1962. There was a PDP-1 in Building 26 (next door to the TX-0), a gift from DEC: serial number 3. It was available for student use, and was entirely hands on, having no operating system not dependent on manipulating the console keys. L. Peter Deutsch was a young high school student, the son of an M.I.T. professor. He wrote a LISP which ran entirely in the core memory of 4096 18-bit words. Later a drum was installed, which had 22 4096-word "fields", or 88K words altogether. Someone - Michael Wolfberg? - changed Deutsch's LISP to treat every memory reference as a subroutine call to a cache/drum access routine.
In 1963, DEC began the PDP-6 project with Gordon Bell as the chief engineer and Alan Kotok as the junior engineer. Kotok still spent time at the Tech Model Railroad Club, where members such as Dave Gross, Peter Samson, and Richard Greenblatt were devising efficient implementations of the various LISP SUBRs. The prototype PDP-6 took shape at the Mill, DEC's facility in Maynard, MA. The M.I.T. students would visit in the evening, bringing paper tape with assembly language source code prepared on the PDP-1 at M.I.T. They used a cross-assembler on a PDP-4. Bill Mann and Richard Greenblatt studied Deutsch's EVAL and wrote a new one for the PDP-6. Dave Gross and Greenblatt wrote PRINT. Gross and Tom Eggers went to work for DEC full time, and did some work on PDP-6 LISP. DEC sold the first PDP-6 to M.I.T.'s Artificial Intelligence Laboratory, accepting the Lab's existing 16K PDP-1 in trade as partial payment. However, the AI Lab was allowed to keep both machines for a short period.
Greenblatt returned to the AI Lab full time at that point (he had earlier been a student employee). At this point, Greenblatt, Stuart Nelson, Tom Knight and Jack Holloway resumed work on PDP-6 LISP. Then Greenblatt and Nelson decided to do a more sophisticated compiler that provided consistent variable access across the interpreter and compiler; this became MacLisp. Several years later John White took over the compiler, which became NCOMPLR. [Richard Greenblatt, as told to Paul McJones, March 15, 2005; see also Greenblatt oral history]
"Ideas from several other implementations influenced the initial design, notably the CTSS version on the IBM 7094, and the very minimal version for the PDP/1. However, the decision to dispense with the a-list in the implementation, a major factor in the space economy and running speed of MACLISP, came some time later. An improved compiler was written as an adjunct to the system – compilation is done 'off-line', and the resulting LAP code loaded into the system when desired." [John L. White 1970; see also Jon L. White 1977]
Source code
System
- Alan Bawden. Partial online archive of AI filesystem of ITS: The Incompatible Time Sharing System. http://www.its.os.org/ In particular, the file -read-.-this- in ftp://ftp.its.os.org/its/ai/lisp.tgz says:
Directories with MacLISP relevance are:
LISP; -- FASL files
LSPDMP; -- Dump files
L; -- MIDAS sources for main lisp file, and for others
COMLAP; -- COMpiler (with FASLAP) and LAP assembler
LSPSRC; -- Various auxillary out-of-core files written in lisp
NILCOM; -- More LSPSRC. Mostly lisp macros, etc.
LSPMAI; -- Bug mail and other notices.
LISP20; -- Stuff for 20X MacLispSee also Zane Healy's indexes on his DEC PDP-10 Emulation page online www.avanthar.com:
- Bruce G. Baumgart, archivist. SAILDART Archives, Artificial Intelligence Laboratory, Stanford University.
online
- [MAC,LSP] MacLisp. Version adapted for SAIL WAITS timesharing system. Various dates, circa 1978. online
- Phil Budne. Source files and text documents. Online at ftp.ultimate.com
- These items were obtained from a TOPS-20 system at XKL.com:
- MACLISP LISP sources including COMPLR.LSP lisp.tar.gz
- MACLISP .DOC and .MID files including LISP-NEWS.DOC from April 28, 1981. lisp2.tar.gz
- These items were obtained from tape images of Chemistry Department disk
packs from the Stevens Tech TOPS-10 timesharing system:
- MIDAS sources for building MACLISP version 804 and MIDAS. Circa June 1979. maclsp804.tar.gz
- MACLISP version 861 (no additional MIDAS files) and Maclisp Reference Manual, March 3, 1979. maclsp861.tar.gz
Latest entry in file LISP.ARC is "TUESDAY SEPT 14,1976 FM+6D.1H.33M.7S. LISP 1211 -GLS,JONL-". File LISP. is timestamped and copyright 1978. File READ.ME ends with "For other questions contact RPG [Richard P. Gabriel]."
"In 1976 the MIT version of MacLisp was ported to the WAITS operating system by Richard Gabriel at the Stanford AI Laboratory (SAIL), which was directed at that time by John McCarthy." [Steele and Gabriel 1993]
Applications
- Terry Winograd. SHRDLU.
Online at
hci.stanford.edu
"SHRDLU is a program for understanding natural language, written by Terry Winograd at the M.I.T. Artificial Intelligence Laboratory in 1968-70. SHRDLU carried on a simple dialog (via teletype) with a user, about a small world of objects (the BLOCKS world) shown on an early display screen (DEC-340 attached to a PDP-6 computer)."
- Source code: Online at hci.stanford.edu
- S. Card, A. Rubin, and T. Winograd. PROVISIONAL SHRDLU USERS' MANUAL (Version 0). Carnegie-Mellon University, August 14, 1972. Online at hci.stanford.edu
- Semaphore Corporation. SHRDLU resurrection. Online at www.semaphorecorp.com
Documentation
- William A. Martin. PDP-6 LISP Input-Output for the Dataphone. Memo 79,
Artificial Intelligence Project, Memorandum MAC-M-241, Project MAC,
Massachusetts Institute of Technology, June 1, 1965, 6 pages.
PDF
at MIT
"Abstract: A version of LISP 1.5 for the PDP-6 Computer has been extended to include IO through the dataphone. This makes possible communication between programs running in Project MAC time sharing and LISP programs running on the PDP-6. The method of handling input-output for the dataphone is similar to that for the typewriter, paper tape punch, and paper tape reader. Three useful LISP functions are presented as examples of dataphone programming.'
- William A. Martin. PDP-6 LISP Input-Output for the Display. Memo 80,
Artificial Intelligence Project, Memorandum MAC-M-242, Project MAC,
Massachusetts Institute of Technology, June 28, 1965, 22 pages.
PDF
at MIT
"Abstract: An intermediate level language for display programming has been embedded in LISP 1.5. The language is intended as a basis for higher level display languages and includes facilities for both generation and analysis of display information. ..."
- Peter Samson. PDP-6 LISP. Artificial Intelligence Memo 98, Project MAC
Memo MAC-M-313, Massachusetts Institute of Technology, June 16, 1966, 11
pages.
PDF
at MIT
"This is a mosaic description of PDP-6 LISP, intended for readers familiar with the LISP 1.5 Programmer's Manual or who have used LISP on some other computer. Some of the newer features (e.g., the display) are experimental and subject to change; in such respects this should not be regarded as a final document."
- Anonymous. PDP-6 LISP (LISP 1.6) Revised. A.I. Memo No. 116A, Project MAC, April 1967, 23 pages, (corrected edition of Memo 116, January 1967). PDF at MIT
- Roland Silver. Incorporating MIDAS Routines into PDP6 LISP. Systems
Program Memo, Artificial Intelligence Memo 127, Project MAC, Massachusetts
Institute of Technology, March 1967, 6 pages.
PDF
at MIT
"Some PDP6 LISP users have felt a need for a way to incorporate MIDAS subroutines into LISP. LISP has been changed to let you do this, using files found on the LISP SYSTEM microtape."
- Roland Silver. LISP Linkage Feature: Incorporating MIDAS Routines into PDP6 LISP. Systems Program Memo, Artificial Intelligence Memo 127A, Project MAC, Massachusetts Institute of Technology, October 1967, 5 pages (corrected edition of Memo 127, March 1967). PDF at MIT
- John L. White. Additions to LAP. Artificial Intelligence Memo 132, Program Memo, Project MAC, Massachusetts Institute of Technology, 4 pages, July 1967. PDF at MIT
- John L. White. Matrix Inversion in LISP. Artificial Intelligence Memo
136, PDP-6 Program Memo, Project MAC, Massachusetts Institute of Technology,
July 1967, 2 pages.
PDF
at MIT
"Very soon there will appear on the vision library tape a file named @IAS which is a collection of compiled SUBR's for performing general matrix row reduction and inversion."
- Jon L. White. PDP-6 LAP. Artificial Intelligence Project Memo 152, Project MAC, Massachusetts Institute of Technology, January 1968, 10 pages. PDF at MIT
- John White. Time-Sharing LISP for the PDP-6. Artificial Intelligence
Memo 157, Project MAC, Massachusetts Institute of Technology, March 1968, 17
pages.
PDF
at MIT
"This Memo. written in the style and convention of A.I. memo. No. 116A, may be considered an addendum thereto. It should prove to be a welcome updating on the LISP system."
- Donald Eastlake III. ITS 1.4 Reference Manual. Artificial Intelligence Memo
No. 161, MAC-M-377, Massachusetts Institute of Technology, June 1968, 83 pages.
PDF at
MIT
ITS (Incompatible Timesharing System) was the operating system on which MacLisp was developed.
- D. Eastlake, R. Greenblatt, J. Holloway, T. Knight, S. Nelson. ITS 1.5 Reference Manual. Artificial Intelligence Memo No. 161A, MAC-M-377, Massachusetts Institute of Technology, July 1969, 180 pages. PDF at MIT Reconstructed text at sigfs.org
- Thomas O. Binford. Display Functions in LISP. Artificial Intelligence Memo No. 182, Project MAC, Massachusetts Institute of Technology, March 1970, 18 pages. PDF at MIT
- John L. White. An Interim LISP User's Guide. Artificial Intelligence
Memo No. 190, Project MAC, Massachusetts Institute of Technology, March
1970, 87 pages.
PDF
at MIT
"The substance of this memo is to initiate the naïve LISP user into the intricacies of the system at the Project MAC A.I. Lab. ... At some undetermined time in the future a comprehensive document will be issued, consisting of an elementary introduction to LISP, a self-primer, the core of this document, and numerous reference appendices. The comprehensive guide will then replace A.I. memos numbers 116A, 152, 157, the LISP Progress Report, this memo and all informal notes and communications."
The Notation section says: "'MACLISP' refers to the PDP/6 implementation of the programming language LISP in use at the Artificial Intelligence Group of Project MAC."
- Jeffrey P. Golden. A User's Guide to the A. I. Group LISCOM Lisp Compiler: Interim Report. Memo No. 210, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, December 1970. PDF at MIT CSAIL
- David A. Moon, David P. Reed, and Ira Goldstein, Guy L. Steele, Alexander Sunguroff. LISP/MACLISP Reference Manual. Rough draft #9905, Massachusetts Institute of Technology, 1973. MACLSP.DBA [UP,DOC] at www.saildart.org
- David A. Moon. MacLISP Reference Manual, Revision 0. Project MAC, Massachusetts Institute of Technology, April 1974.
- Anonymous. MACLISP Reference Manual, March 6, 1976. LISP INFO file from MIT
TECO EMACS Version 170.
Online at pdp-10.trailing-edge.com
- "This file is a fast edit of the MACLISP Reference Manual Dated March 6, 1976, so expect stuff to be out of date and to refer to non-existent page numbers. See other notes under Sources."
From the same release: MACLISP-COMMANDS INFO file. Online at pdp-10.trailing-edge.com
- MacLISP information from ITS AI:.INFO at www.avanthar.com
- JonL White [JONL], Eric Rosen [ECR], Richard M. Stallman [RMS], Guy L. Steele [GLS], Howard I. Cannon [HIC], Bob Kerns [RWK]. LISP NEWS. MacLisp release notes.
"This file contains in reverse chronological order the modifications to Maclisp over the years. Astute readers can find programming hints and obscure documentation here."
- March 1, 1974 to February 17, 1982. Online at www.avanthar.com
- March 1, 1969 to January 26, 1978 Online at www.saildart.com
- Anonymous. Maclisp Reference Manual, March 3, 1979. Online at www.avanthar.com
- K. M. Pitman. The Revised MacLisp Manual.
- "Saturday Morning Edition", M.I.T. Laboratory for Computer Science Technical Report MIT-LCS-TR-295, June 1, 1983.
"Abstract [from www.multicians.org bibliography]: MACLISP is a dialect of Lisp developed at M.I.T.'s Project MAC (now the MIT Laboratory for Computer Science) and the MIT Artificial Intelligence Laboratory for use in artificial intelligence research and related fields. Maclisp is descended from Lisp 1.5, and many recent important dialects (for example Lisp Machine Lisp and NIL) have evolved from Maclisp. David Moon's original document on Maclisp, The Maclisp Reference Manual (alias the Moonual ) provided in-depth coverage of a number of areas of the Maclisp world. Some parts of that document, however, were never completed (most notably a description of Maclisp's I/O system); other parts are no longer accurate due to changes that have occurred in the language over time. This manual includes some introductory information about Lisp, but is not intended as tutorial. It is intended primarily as a reference manual; particularly, it comes in response to user's please for more up-to-date documentation. Much text has been borrowed directly from the Moonual, but there has been a shift in emphasis. While the Moonual went into greater depth on some issues, this manual attempts to offer more in the way of examples and style notes. Also, since Moon had worked on the Multics implementation, the Moonual offered more detail about compatibility between ITS and Multics Maclisp. While it is hoped that Multics users will still find the information contained herein to be useful, this manual focuses more on the ITS and TOPS-20 implementations since those were the implementations most familiar to the author."
- "Sunday Morning Edition", December 16, 2007. Online at www.maclisp.info
- "Saturday Morning Edition", M.I.T. Laboratory for Computer Science Technical Report MIT-LCS-TR-295, June 1, 1983.
"This is a mosaic description of PDP-6 LISP, intended for readers familiar with the LISP 1.5 Programmer's Manual or who have used LISP on some other computer. Many of the features, such as the display, are subject to change. Thus, consult a PDP-6 systems programmer for any differences which may exist between LISP of Oct. 14, 1966 and present LISP on the system tape."
[Steele and Gabriel 1993] note: "The report does not bear the author's name, but Jeffrey P. Golden [Golden 1970] attributes it to Jon L White."
Papers
- Joel Moses. The Function of FUNCTION in LISP or Why the FUNARG Problem Should be Called the Environment Problem. AI-199, MAC-M-428, Project MAC, Massachusetts Institute of Technology, June 1970, 15 pages. PDF at MIT
- Richard J. Fateman. Reply to an editorial. ACM SIGSAM Bulletin, Issue
25, March 1973, pages 9-11. ACM DL
"This reports the results of a test in which a compiled MacLisp floating-point program was faster than equivalent Fortran code. The numerical portion of the code was identical and McLisp used a faster subroutine-call protocol." [Steele and Gabriel 1993]
- Guy Lewis Steele, Jr. Data Representations in PDP-10 MacLISP. AI Memo 420, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, September 1977, 13 pages. PDF at MIT
- Guy Lewis Steele, Jr. Fast Arithmetic in MacLISP. AI Memo 421,
Artificial Intelligence Laboratory, Massachusetts Institute of Technology,
September 1977, 11 pages.
PDF
at MIT
"This paper was presented at the MACSYMA Users Conference, Berkeley, California, July 1977."
- Jon L. White. LISP: Program is Data: A Historical Perspective on MacLISP. Proceedings of the 1977 MACSYMA Users' Conference. NASA Scientific and Technical Information Office (Washington, D.C., July 1977), 181-189. PDF at nasa.gov
Applications
- Adolfo Guzmán. Decomposition of a Visual Scene into Bodies. Artificial
Intelligence Memo 139, Project MAC Memorandum MAC-M-357, Massachusetts
Institute of Technology, September 1967, 47 pages.
PDF
at MIT
"A shorter but improved version of this memorandum has been published: 6. Guzmán, A. Decomposition into Three-Dimensional Bodies. AFIPS Proceedings of the 1968 Fall Joint Computer Conference. Thompson Book Co., Washington, D.C."
- Stephen Smoliar. EUTERPE-LISP: A LISP System with Music Output. Artificial Intelligence Memo 141, Project MAC, Massachusetts Institute of Technology, September 1967, 16 pages. PDF at MIT
- Richard Bogen, Jeffrey Golden, Michael Genesereth, and Alexander Doohovskoy. MACSYMA Reference Manual. The MATHLAB Group, Laboratory for Computer Science, Massachusetts Institute of Technology, Version 9, Second Printing, December 1977, v+308+x pages. PDF at bitsavers.org
BBN LISP
Apparently the first LISP at Bolt, Beranek and Newman Inc. was based on L. Peter Deutsch's Basic PDP-1 LISP:
"... my PDP-1 Lisp implementation, as you probably know, was extensively rewritten at BB&N to become the conceptual predecessor of BBN-Lisp, which in turn engendered Interlisp" [L. Peter Deutsch, quoted in lisp_doc.txt accompanying Bob Supnik's Software Kit]
"There was a LISP system running on the PDP-1 at BBN, and I had converted it to use a software paging system that I had developed earlier at MIT." [Dan Murphy in Origins and Development of TOPS-20]
Source code
- Dan Murphy had an extensive archive of old sources for BBN LISP (and many
other things including TENEX, TELCOMP, and TECO), but the disk pack containing
them fell victim to an overzealous sysadmin in 1987. He still has a set of files
in LISP and PDP-10 assembly language.
[Personal communication to Paul McJones, 10 March 2005.] - Section 4 of Bobrow et al. 1966 below gives the source code for all the standard functions implemented in LISP.
Documentation
- Daniel G. Bobrow, D. Lucille Darley, Daniel L. Murphy, Cynthia Solomon, and
Warren Teitelman. The BBN-LISP System. Scientific Report No. 1., Project No.
8668, Contract No. AF19(628)-5065, BBN Report 1346, Bolt, Beranek and Newman Inc., Cambridge,
Massachusetts, February 1966, 82 pages.
PDF
This report describes the LISP system for a PDP-1 with 8392 18-bit words of 5 microsecond core memory and 92,312 words on a drum with an average access time of 16.5 milliseconds. It describes the internal structure including paging and binding techniques. Section III defines all the standard functions; Section IV gives the source code of all the standard functions implemented in LISP.
- Daniel G. Bobrow [and Daniel L. Murphy]. Preliminary Specification for BBN 940 LISP. [Bolt., Beranek and Newman Inc.,] October 13, 1966, 16 pages. PDF
- W. Teitelman, D. G. Bobrow, A. K. Hartley, and D. L. Murphy. BBN-LISP: TENEX Reference Manual. Bolt, Beranek and Newman Inc., Cambridge, Massachusetts, July 1971. PDF
- W. Teitelman, D. G. Bobrow, A. K. Hartley, and D. L. Murphy. BBN-LISP: TENEX Reference Manual. Bolt, Beranek and Newman Inc., Cambridge, Massachusetts, first revision, February 1972.
- W. Teitelman, D. G. Bobrow, A. K. Hartley, and D. L. Murphy. BBN-LISP: TENEX Reference Manual. Bolt, Beranek and Newman Inc., Cambridge, Massachusetts, second revision, August 1972. PDF at bitsaver.org
Papers
- Daniel G. Bobrow and Daniel L. Murphy. Structure of a LISP system using
two-level storage. Communications of the ACM, Volume 10, Issue 3,
March 1967, pages 155-159.
ACM DL
"Abstract: In an ideal list-processing system there would be enough core memory to contain all the data and programs. Described in this paper are a number of techniques that have been used to build a LISP system utilizing a drum for its principal storage medium, with a surprisingly low time penalty for use of this slow storage device. The techniques include careful segmentation of system programs, allocation of virtual memory to allow address arithmetic for type determination, and a special algorithm for building reasonably linearized lists. A scheme for binding variables is described which is good in this environment and allows for complete compatibility between compiled and interpreted programs with no special declarations."
Describes BBN LISP on a Digital Equipment Corporation PDP-1 with a core memory of 16K 18-bit words (5 microseconds access time) and a drum memory of 88K words (17 milliseconds average access time).
- Daniel G. Bobrow and Daniel L. Murphy. A note on the efficiency of a
LISP computation in a paged machine. Communications of the ACM,
Volume 11 , Issue 8, August 1968, pages 558, 560.
ACM DL
"Abstract: The problem of the use of two levels of storage for programs is explored in the context of a LISP system which uses core memory as a buffer for a large virtual memory stored on a drum. Details of timing are given for one particular problem."
Discusses BBN LISP on the SDS 940, which had 16K of 24-bit core memory and 1M words of drum memory (17 milliseconds average access time).
- Dan Murphy. TENEX and TOPS-20 Papers.
Online at www.opost.com/dlm/tenex
TENEX and TOPS-20 were popular operating systems for running LISP. See especially Origins and Development of TOPS-20 for extensive background on the PDP-6, PDP-10, LISP, and more.
INTERLISP

See also: Interlisp-D.
Source code
- Thomas C. Rindfleisch, archivist. System dumps, SUMEX-AIM.
Rindfleish notes: "This version of Interlisp should be both TENEX and TOPS20 compatible. It came at a time when lots of work was going on to port Interlisp to other environments, including the VAX and the new personal Lisp machines (Dolphins, etc.). This means little was changing in the TENEX/TOPS20 version." Rindfleisch also has tape images containing various .sav files created from these files.
- Partial contents of <lisp> directory from a system dump, January 31, 1982. .zip
- Contents of <lisp> directory from final full dump, February 25, 1983. Also contains lisp.mac.829 from the <lisp> directory from the January 31, 1982 dump. .zip
- Contents of <lispusers> directory from final full dump, February 25, 1983. .zip
- Contents of <helpsys> directory from final full dump, February 25, 1983. .zip
- SDF Public Access UNIX System, archivist. Contents of TWENEX.ORG Interlisp directories, retrieved by Larry Masinter, August 18, 2006.
Masinter notes: "The TWENEX files seem to have come from Sumex, or at least, there are a lot of sumex-specific files there. The file dates are 1984, the latest seems to be 7-Dec-84. I used 'type a' FTP for the source files and 'type I' retrieval for the binary files, since the PDP-10 is a 9-bit-byte / 36-bit-word machine."
Documentation
- Warren Teitelman. INTERLISP Reference Manual. Xerox Palo Alto
Research Center, Palo Alto, California, December 1973.
PDF at bitsavers.org
"Acknowledgements and Background: INTERLISP (formerly BBN LISP) has evolved from a succession of LISP systems that began with a LISP designed and implemented for the DEC PDP-1 by D.G. Bobrow and D.L. Murphy at Bolt, Beranek and Newman in 1966, and documented by D.G. Bobrow. An upwards compatible version of this LISP was implemented for the SDS 940 in 1967, by Bobrow and Murphy. This system contained the seeds for many of the capabilities and features of the current system: a compatible compiler and interpreter, uniform error handling, an on-line LISP oriented editor, sophisticated debugging facilities, etc. 940 LISP was also the first LISP system to demonstrate the feasibility of using software paging techniques and a large virtual memory in conjunction with a list-processing system. DWIM, the Do-What-I-Mean error correction facility, was introduced into the system in 1968 by W. Teitelman, who was also responsible for documentation for the 940 LISP system. ..."
- Warren Teitelman et al. INTERLISP Reference Manual. Xerox Palo Alto Research Center, Palo Alto, California, first revision, October 1974.
- Warren Teitelman et al. INTERLISP Reference Manual. Xerox Palo Alto Research Center, Palo Alto, California, second revision, December 1975.
- Anonymous. INTERLISP/360 and 370 Reference Manual. Uppsala Datacentral, Sweden, 1974.
- Anders Haraldson. LISP - details : INTERLISP/360-370. Datacentral, Department of Computer Science, Uppsala University, 1975.
- Warren Teitelman et al. INTERLISP Reference Manual. Xerox Palo Alto Research Center, Palo Alto, California, third revision, October 1978.
- J. Strother Moore II. The INTERLISP Virtual Machine Specification. Technical
Report CSL 76-5, Xerox Palo Alto Research Center.
- September 1976, 131 pages. PDF at bitsavers.org
- Revised March 1979, 126 pages. PDF at cs.utexas.edu
"In order to implement the INTERLISP System (as described in The INTERLISP Reference Manual by W. Tetelman, et al.) on some physical machine, it is only necessary to implement the INTERLISP Virtual Machine, since Virtual Machine compatible source code for the rest of the INTERLISP System can be obtained from publicly available files."
- [Warren Teitelman et al.] INTERLISP Documentation for TOPS-20 operating
system. Chapter 1 missing. DECUS DECSYSTEM-20 Library Distribution Tapes, 15
March 1981. See files decus:2lisp.tty.2 through decus:a3lisp.tty.2.
Online at
pdp-10.trailing-edge.com
1. INTRODUCTION [Missing]
2. Using INTERLISP
3. DATA TYPES, STORAGE ALLOCATION, GARBAGE COLLECTION, OVERLAYS
4. FUNCTION TYPES AND IMPLICIT PROGN
5. PRIMITIVE FUNCTIONS AND PREDICATES
6. LIST MANIPULATION AND CONCATENATION
7. PROPERTY LISTS AND HASH LINKS
8. FUNCTION DEFINITION AND EVALUATION
9. THE INTERLISP EDITOR
10. ATOM, STRING, ARRAY, AND STORAGE MANIPULATION
11. FUNCTIONS WITH FUNCTIONAL ARGUMENTS
12. VARIABLE BINDINGS, PUSH DOWN LIST FUNCTIONS, AND THE SPAGHETTI STACK
13. NUMBERS AND ARITHMETIC FUNCTIONS
14. INPUT/OUTPUT FUNCTIONS
15. DEBUGGING - THE BREAK PACKAGE
16. ERROR HANDLING
17. AUTOMATIC ERROR CORRECTION - THE DWIM FACILITY
18. THE COMPILER AND ASSEMBLER
19. ADVISING
20. PRINTSTRUCTURE, INTERSCOPE, AND HELPSYS
21. MISCELLANEOUS
22. THE PROGRAMMER'S ASSISTANT AND LISPX
23. CLISP - CONVERSATIONAL LISP
Appendix 1. Transor
Appendix 2. The INTERLISP Interpreter
Appendix 3. Control Characters
- Raymond Bates, David Dyer, Andrea Ignatowski, Johannes Koomen, Steven Saunders, and Donald Voreck. Interlisp-VAX Users Manual. Interlisp-VAX Project, USC Information Sciences Institute, Marina del Rey, California, December 5, 1982, 57 pages. PDF
Papers
- Warren Teitelman. PILOT: a Step Toward Man-Computer Symbiosis. Ph.D.
Thesis. MIT-AI-TR-221, Massachusetts Institute of Technology, September
1966.
PDF at MIT
"Interlisp (and BBN-Lisp before it) introduced many radical ideas into Lisp programming style and methodology. The most visible of these ideas are embodied in programming tools, such as the spelling corrector, the file package, DWIM, CLISP, the structure editor, and MASTERSCOPE.
The origins of these ideas can be found in Warren Teitelman's PhD dissertation on man-computer symbiosis. In particular, it contains the roots of structure editing (as opposed to "text" or "tape" editing, breakpointing, advice, and CLISP." [Steele and Gabriel 1993]
- Warren Teitelman. Automated programmering - the programmer's assistant. Proceedings of the Fall Joint Computer Conference, AFIPS, December 1972, pages 915-921. PDF
- Warren Teitelman. CLISP - Conversational LISP. Proceedings of the Third International Joint Conference on Artificial Intelligence, Stanford University, California, 1973, pages 686-690. PDF
- Daniel G. Bobrow and Ben Wegbreit. A model and stack implementation of
multiple environments. Communications of the ACM, Volume 16 , Issue 10,
October 1973, pages 591-603.
ACM DL
"One of the most innovative of the language extensions introduced by Interlisp was the spaghetti stack. The problem of retention (by closures) of the dynamic function-definition environment in the presence of special variables was never completely solved until spaghetti stacks were invented." [Steele and Gabriel 1993]
- Warren Teitelman. INTERLISP. ACM SIGART Bulletin, Issue 43, December 1973, pages 8-9. ACM DL
- Warren Teitelman. INTERLISP Documentation. ACM SIGART Newsletter, Issue 44, February 1974, page 10. ACM DL
- D.G. Bobrow. A Note on Hash Linking. Communications of the ACM, Volume 18, Number 7, July 1975, pages 413-415. ACM DL
- W. Teitelman and L. Masinter. The Interlisp programming environment. IEEE Computer, Volume 14, Number 4, April 1981, pages 25-34.
- Larry M. Masinter. Interlisp-VAX: A Report. Report No. SUN-CS-81-879 (also numbered: HPP-81-14), Department of Computer Science, Stanford University, August 1981. PDF online at stanford.edu
- Raymond L. Bates, David Dyer, and Johannes A.G.M. Koomen. Implementation of Interlisp on the VAX. Proceedings of the 1982 ACM symposium on LISP and functional programming, Pittsburgh, Pennsylvania, United States, 1982, pages 81-87. ACM DL
Stanford LISP 1.6
"When Stanford received a PDP-6 [the original MacLISP developed at M.I.T.] was converted to run under the DEC monitor; several modifications and embellishments were performed and this LISP became LISP 1.6, also known as Stanford LISP. Stanford LISP was exported to the Irvine campus of the University of California becoming UCI LISP; at Irvine it was further modified and enhanced, receiving the editing and debugging packages of a different LISP strain called BBN LISP; BBN LISP soon became known as InterLISP. [John Allen, The TLC-LISP Documentation, The Lisp Company,1980]
"At Stanford in the 1960's, an early version of MacLisp was adapted to the PDP-6; this Lisp was called Lisp 1.6. The early adaptation was rewritten by John Allen and Lynn Quam; later compiler improvements were made by Whit Diffie. UCI Lisp was an extended version of Lisp 1.6 in which an Interlisp style editor and other programming environment improvements were made. UCI Lisp was used by some folks at Stanford during the early to mid-1970's, as well as at other institutions. In 1976 the MIT version of MacLisp was ported to the WAITS operating system by Richard Gabriel at the Stanford AI Laboratory (SAIL), which was directed at that time by John McCarthy. This dialect supplanted the Lisp 1.6 derivatives, including UCI Lisp. At the Heuristic Programming Project, under the direction of Edward Feigenbaum, Interlisp was the primary dialect. Cordell Green's automatic programming group (PSI) used Interlisp via remote login to a PDP-10 at Information Science Institute (ISI) in southern California." [Steele and Gabriel 1993]
Apparently there was a port to the IBM 360/370.
Source code
- Bruce G. Baumgart, archivist.
SAILDART Archives, Artificial Intelligence Laboratory, Stanford University.
online
- [LSP,LSP] Whitfield Diffie? Contains various versions. [LSP,LSP] online at www.saildart.org
- [CMP,LSP] Whitfield Diffie? Compiler development directory? Contains various versions of the Stanford (COMPLR. and COMPLR.NEW) and Rutgers (ILISPC.RUT) compiler source, plus bug reports and email from Rick LeFaivre (Rutgers) to Whit Diffie. Also contains several versions of "A Brief Description of the Stanford Lisp Compiler", apparently by Diffie (CDOC, COMPLR.NOT) [CMP,LSP] online at www.saildart.org
- [LSP,SYS] Lynn H. Quam and Whitfield Diffie et al. Stanford Lisp 1.6. Various dates, circa June 1973. [LSP,SYS] online at www.saildart.org
Files READ.ME and VITAL.MSG contain this note: "THIS AREA CONTAINS STANFORD LISP 1.6, NOT THE UCI ILISP SYSTEM WHICH IS NOW ON [UCI,SYS]."
- [UCI,SYS] University of California at Irvine (UCI) version of Stanford Lisp 1.6. Various dates, circa 1973. [UCI,SYS] online at www.saildart.org
- [RUT,LSP] Rutgers University version of UCI version of Stanford Lisp 1.6. Various dates, circa 1978. [RUT,LSP] online at www.saildart.org
File READ.ME contains "Files on this directory are on LISP UDP May 11, 1980 - rpg. The directory [RUT,LSP] contains the Rutgers University Lisp system. This is a modification of ILISP produced by Eric Lefaivre@Rutgers-10. Many bugs in the compiler have been reparied and many new features added to other parts of the system. These are explained in ILISP.MAN[RUT,LSP]. Whit Diffie WD@SAIL"
- Lynn H. Quam and Whitfield Diffie et al. LISP 1.6. DECUS Library Program 10-59, May 1, 1973. Online at pdp-10.trailing-edge.com
- Carl Engelman. MATHLAB. DECUS Library Program 10-142, November 7, 1969. Online at pdp-10.trailing-edge.com
File DI4JUN lists a larger collection of files (including more source code) with [Project,ProgrammerNumber] of [UCI,WD], where WD is apparently Whitfield Diffie.
Although the DECUS Library Catalog lists this version as authored and submitted by Quam and Diffie, and last revised by Quam, the file lisp.lsp contains a startup banner of "Stanford Lisp 1.6 (Utah version) 1-May-73".
Abstract from DECUS Library Catalog: "The interactive LISP 1.6 system has been developed for the PDP-10 at the Stanford University Artificial Intelligence project. It is assumed that the user is familiar with either some other LISP system or the LISP 1.5 Primer by Clark Weissman. This LISP 1.6 system has as a subset most of the features and functions of other LISP 1.5 systems. In addition, there are several new features such as an arbitrary precision integer package, an S-expression editor, up to 14 active input/output channels, the ability to control the size of memory spaces, a standard relocating loader assembly language or compiled programs, etc. This system uses an interpreter; however, there is also a compiler which produces machine code. Compiled functions are approximately ten times as fast and also take less memory space. The manual is organized in a functional manner. First the basic data structures are described; then the functions for operating on them. The appendices present more detailed information on the system, its internal structure, the compiler, and several auxiliary packages."
1 25(7) 18-Jul-80 59.inf 1 128(36) 17-Dec-73 alvine.lsp 48 6144(36) 17-Dec-73 alvine.mac 141 18048(36) 17-Dec-73 complr. 7 896(36) 17-Dec-73 grin. 21 2688(36) 17-Dec-73 lap. 11 1408(36) 17-Dec-73 lisp.lsp 150 19154(36) 17-Dec-73 lisp.mac 130 16531(36) 17-Dec-73 loader.mac 12 1536(36) 17-Dec-73 smile. 1 128(36) 17-Dec-73 symmak.mac 10 1280(36) 17-Dec-73 trace
- University of California, Irvine. UCI-LISP. DECUS
Library Program 10-210,
March 27, 1975.
Online at
pdp-10.trailing-edge.com
Abstract from DECUS Library Catalog: "This is U.C.I.'s version of LISP. The DECUS write-up is composed of random notes concerning the system. The UCI LISP manual is in the "DOC" file on the tape, in upper case. It is also available in much more readable upper and lower case directly from the Department of Information and Computer Science at the University of California, Irvine."
1 25(7) 8-Oct-75 210.inf 2 690(7) 26-Sep-73 arith.lsp 14 8740(7) 27-Mar-75 arith.lst 4 1950(7) 24-Mar-75 arith.mac 2 1225(7) 24-Mar-75 arith.rel 17 10735(7) 1-Feb-73 break.com 84 53305(7) 6-Sep-74 break.doc 50 31760(7) 26-Sep-73 break.lap 1 255(7) 25-Sep-73 break.lsp 12 7475(7) 15-Oct-72 cbugs. 10 6310(7) 6-Sep-74 change.doc 1 635(7) 8-Sep-73 compat.lsp 120 76230(7) 10-Sep-73 complr.com 305 194755(7) 1-Sep-78 complr.lap 108 68750(7) 16-Nov-72 complr.org 159 20337(36) 27-Mar-75 complr.sav 51 32575(7) 26-Sep-73 edit.com 259 165745(7) 21-Mar-79 edit.doc 174 111185(7) 26-Sep-73 edit.lap 3 1435(7) 26-Sep-73 edit.lsp 2 900(7) 26-Sep-73 editst.lap 23 14150(7) 19-Sep-73 errorx.com 70 44280(7) 26-Sep-73 errorx.lap 2 825(7) 13-Jun-73 errorx.lsp 28 17700(7) 6-Sep-74 index.doc 37 23345(7) 6-Sep-74 intro.doc 21 12945(7) 25-Sep-73 lap. 21 12945(7) 27-Mar-75 lapv. 28 3514(36) 26-Mar-75 lisp.lod 57 7186(36) 27-Mar-75 lisp.low 120 15360(36) 27-Mar-75 lisp.shr 5 552(36) 27-Mar-75 lisp.sym 641 409955(7) 27-Mar-75 loader.lst 282 179950(7) 24-Mar-75 loader.mac 38 4851(36) 24-Mar-75 loader.rel 98 62350(7) 6-Sep-74 lspdoc.doc 8 4525(7) 27-Mar-75 read.me 3 1890(7) 27-Mar-75 remob.lsp 3 1890(7) 27-Mar-75 remobv.lsp 14 8580(7) 25-Oct-73 scan.lst 3 1800(7) 23-Jan-73 scan.mac 2 990(7) 23-Jan-73 scan.rel 4 2195(7) 27-Mar-75 symmak.lst 1 435(7) 24-Mar-75 symmak.mac 1 58(36) 24-Mar-75 symmak.rel 20 12385(7) 5-Nov-73 sys1.com 57 36065(7) 5-Nov-73 sys1.lap 3 1480(7) 25-Sep-73 sys2.lsp 3 1480(7) 27-Mar-75 sys2v.lsp 15 9215(7) 6-Sep-74 tabcon.doc 1 30(7) 27-Mar-75 ucilsp.cmd 932 596135(7) 27-Mar-75 ucilsp.lst 254 162480(7) 27-Mar-75 ucilsp.mac 134 17087(36) 27-Mar-75 ucilsp.rel 45 28385(7) 6-Sep-74 update.doc
We include this item because it includes (parts of) a Stanford LISP 1.6 system and because it is interesting in its own right.
Abstract from DECUS Library Catalog: "MATHLAB is an on-line system providing machine aid for the mechanical symbolic processes encountered in analysis. It is capable of performing, automatically and symbolically, such common procedures as simplification, substitution, differentiation, polynomial factorization, indefinite integration, direct and inverse Laplace transforms, the solution of linear differential equations with constant coefficients, the solution of simultaneous linear equations, and the inversion of matrices. It also supplies fairly elaborate bookkeeping facilities appropriate to its on-line operation."
1 25(7) 29-Apr-75 142.inf 1 128(36) 21-Nov-69 alvine.lsp 31 3968(36) 21-Nov-69 alvine.mac 3 302(36) 6-Apr-71 bhand1.lap 1 128(36) 21-Nov-69 bignum.lsp 29 3670(36) 20-Apr-71 bignum.mac 14 1781(36) 7-Apr-71 bpre1.l 40 5037(36) 7-Apr-71 brats1.l 40 5072(36) 6-Apr-71 bsimp1.l 18 2203(36) 14-Oct-70 celt6.l 138 17664(36) 12-Nov-70 cmp47x. 18 2304(36) 21-Nov-69 debug. 14 1789(36) 22-Jul-71 dif8.l 41 5176(36) 14-Jun-71 disp9.l 33 4201(36) 11-Mar-71 fact6.l 5 640(36) 21-Nov-69 grin. 23 2879(36) 7-Oct-70 ilt2.l 21 2597(36) 30-Sep-70 int2.l 16 2048(36) 20-Apr-71 lap. 11 1337(36) 19-Jan-72 lde6.l 5 640(36) 21-Nov-69 lisp.lsp 123 15743(36) 19-Mar-71 lisp.mac 3 384(36) 21-Nov-69 lisp.txt 129 16512(36) 21-Nov-69 loader.mac 1 128(36) 5-Aug-70 macros.l2 44 5619(36) 14-Jan-72 mat11.l 449 57380(36) 19-Jan-72 mathla.sav 58 7415(36) 23-Jul-71 mlab37.l 9 1152(36) 21-Nov-69 smile. 9 1117(36) 16-Mar-71 sol6.l 1 128(36) 21-Nov-69 symmak.mac 15 1873(36) 20-Apr-71 top9.l 6 768(36) 29-Apr-71 trace.Includes MATHLAB.
Documentation
- L. Quam. LISP Display Functions. Operating Note Number 7, Artificial Intelligence Laboratory, Stanford University, 15 February 1967. [From Stoyan]
- R.I. Berns. A Paged LISP Using the Dynamic Relocation Hardware of an IBM 360/67. Computation Center, Stanford University, Stanford, 1967. [From Stoyan]
- Lynn H. Quam and John Allen. Lisp 1.6. Operating Note Number 28.1,
Artificial Intelligence Laboratory, Stanford University, June 13, 1968, 23
pages. Copy belonging to Lynn H. Quam; missing page 19.
PDF
"Abstract: This note describes the LISP 1.6 system that runs on the PDP-6 computer in the Stanford A.I. Laboratory. The description is intended for readers who are generally familiar with the LISP 1.5.
ACKNOWLEDGEMENT: The PDP-6 LISP system was developed at M.I.T. and adapted for the Stanford A.I. Project by John Allen. This is a revision of SAILON-28, which was an adaptation of M.I.T. A.I. Memo No. 116. '->' in the left hand margin indicates a new feature."
This was commonly referred to as SAILON 28.1, for Stanford Artificial Intelligence Laboratory Operating Note 28.1.
- Lynn Quam. SMILE at LISP. Operating Note No. 41, Artificial Intelligence Laboratory, Stanford University, September 16, 1968, 7 pages. Copy belonging to Lynn H. Quam. PDF
- Lynn H. Quam. Stanford A. I. Lisp 1.6 Manual. Operating Note Number 28.2, Artificial Intelligence Laboratory, Stanford University, December 9, 1968, 85 pages. Copy belonging to Lynn H. Quam; missing cover and pages 15-1, 15-2. PDF
- L.H. Quam. A LISP Debugging System. March 18, 1969, 7 pages. Copy belonging to Lynn H. Quam. PDF
- L.H. Quam. A User Modifiable LISP Scanner. June 12, 1969, 5 pages. Copy belonging to Lynn H. Quam. PDF
- Lynn H. Quam. Stanford Lisp 1.6 Manual. Operating Note Number 28.3,
Artificial Intelligence Laboratory, Stanford University, September 1969, 90
pages. Copy belonging to Lynn H. Quam.
PDF
"This version received wide distribution and had the famous NIL-paper cover."
[Lynn H. Quam, personal communication to Paul McJones, June 28, 2005] - Lynn H. Quam and Whitfield Diffie. Stanford Lisp 1.6 Manual. Operating Note Number 28.6, Artificial Intelligence Laboratory, Stanford University, undated, 128 pages. Copy belonging to Lynn H. Quam. PDF
- Lynn H. Quam and Whitfield Diffie. Stanford LISP 1.6 Manual. Operating Note
28.7, Artificial Intelligence Laboratory, Stanford University, September
1969. DSK:LISP.WD [S,DOC] at www.saildart.org
The SAIL Operating Notes Guide includes this entry:
SAILON-28.7, Lynn H. Quam and Whitfield Diffie, "Stanford LISP 1.6 Manual", September 1969, (DSK:LISP.WD[S,DOC]). Updated 1976. Describes the LISP interpreter and compiler, the editor ALVINE, and other aspects of this venerated list processing system.
- Anonymous. LISP/360 Reference Manual. Center for Information Processing, Stanford University, Stanford, California, 1972. [From Stoyan]
- Robert J. Bobrow, Richard R. Burton, Jeffrey M. Jacobs, Daryle Lewis. UCI
LISP Manual. Technical Report 21, Department of Information and Computer
Science, University of California, Irvine, 1973, 175 pages.
Online at
pdp-10.trailing-edge.com:
Title page; Table of Contents
0. Introduction
1. Debugging Facilities
2. The LISP Editor
3. Extended Interpretation of LISP Forms
4. Extensions to the Standard Input/Output Functions, 6. New Predicates, 7. New Numeric Functions, 8. Miscellaneous New Functions, 11. Contiguous Blocks of Storage
Index
Changes to the UCILISP System 9/73
William J. Earl. UCILISP Random Notes. March 27, 1975. - K.R. Kay. Appendix - Utah Modifications Stanford Lisp/360 Reference Manual. 4th Edition, Computational Physics Group, University of Utah, January 1975. [From Stoyan]
- R. LeFaivre. Rutgers/UCI LISP Manual.
- Online manual, [RUT,LSP]ILISP.MAN, SAILDART Archives, Artificial Intelligence Laboratory, Stanford University, February 22, 1977. online at www.saildart.org
- Online manual, [RUT,LSP]ILISP.MAN, SAILDART Archives, Artificial Intelligence Laboratory, Stanford University, October 8, 1977. online at www.saildart.org
- Online manual, RS:RUTLSP.MAN, Computer Science Department, Rutgers University, May 1978.
- James R. Meehan. The New UCI-LISP Manual. With contributions by Lynn H. Quam, Whitfield Diffie, Robert J. Bobrow, Richard R. Burton, Jeffrey M. Jacobs, Daryle Lewis, and Rick LeFaivre. Lawrence Erlbaum Associates, Publishers, Hillsdale, New Jersey, 1979, xix+366 pages.
- Crispin S. Perdue. C-MU LISP. Department of Computer Science, Carnegie-Mellon University, September 2, 1979. 202 pages.
Crispin notes: "C-MU LISP was UCI Lisp with a few modifications and a bunch of additions. Mark Stickel did a lot of that based on Interlisp features and I did some also."
Applications
- Anthony Hearn. REDUCE User's Manual. Report No. ITP-292, Institute of Theoretical Physics, Department of Physics, Stanford University, 1967, revised 1968.
- A. Hearn. REDUCE Users' Manual. Memo AIM-50, Stanford Artificial Intelligence Laboratory, February 1967. [From Earnest 1973 -- is this really AIM-57?]
- Anthony Hearn. REDUCE, a User-oriented Interactive System for Algebraic Simplification. Technical Report AIM-57, Stanford Artificial Intelligence Laboratory, Stanford, California, 1967.
- Anthony Hearn. REDUCE - A User Oriented Interactive System for Algebraic Simplification. In Interactive Systems for Experimental Applied Mathematics, pages 79-90 (edited by M. Klerer and J. Reinfelds, Academic Press, New York, 1968).
- A.C. Hearn. REDUCE 2 User's Manual. Memo AIM-133, Stanford Artificial Intelligence Project, October 1970. DSK:REDUCE.XER [CSP,DOC] at www.saildart.org
- Anthony C. Hearn. REDUCE 2 Symbolic Mode Primer. University of Utah. Operating Note 62, Stanford Artificial Intelligence Laboratory, October, 1970. DSK:RLISP.XER [CSP,DOC] at www.saildart.org
- A.C. Hearn. REDUCE 2 Users Manual. Report UCP-19, Symbolic Computation Group, Department of Computer Science, University of Utah, 1973. DSK:REDUCE.ACH [AIM,DOC] at www.saildart.org
"This copy of the REDUCE 2 User's Manual includes all updates through March 30, 1974."
- David Canfield Smith. MLISP User's Manual. Memo AI-84, Artificial Intelligence Project, Computer Science Department, School of Humanities and Sciences, Stanford University, January 1969, 41 pages. Copy belonging to Lynn H. Quam. PDF
IBM Lisp
- F. W. Blair and R. D. Jenks. LPL-LISP Programming Language. IBM Thomas J. Watson Research Center, Yorktown Heights, New York, 1970. [Cited in Hearn 1971]
- Fred W. Blair, James H. Griesmer, Joseph Harry, and Mark Pivovonsky.
Design and Development Document for LISP on Several S/360 Operating Systems.
IBM Research, Yorktown Heights, New York, revised June 24, 1971, 137 pages.
PDF
Reference manual for implementation of LISP running on OS/360, TSS/360, and CP/CMS.
Stoyan cites an earlier version: F.W. Blair. Design and Development Document for LISP on Several S/360 Operating Systems, IBM Confidential, Research Center, Yorktown Heights, New York, 1967.
- Fred W. Blair. Structure of the Lisp Compiler. IBM Research, Yorktown
Heights, no date [Stoyan says circa 1970].
PDF
"The first Lisp compiler was written by Robert Brayton with the assistance of David Park, in SAP for the 704. That compiler was started in 1957 and was working in 1960 by which time Brayton left MIT. During that interval of time a Lisp compiler written in Lisp was implemented by Klim Maling but that compiler was apparently dropped. The argument advanced was that Brayton's being written in assembly language, would obviously be faster. Difficulties in maintenance developed when Brayton left the project. After Brayton and Maling, Timothy Hart and Michael Levin wrote a compiler in Lisp which was distributed with the 704 Lisp 1.5 system. The compiler that I am most familiar with and will describe today is a descendant of that compiler."
- Richard Ryniker and Mark Pivovonsky. CMS-LISP I/O Supervisory Functions. IBM Research, Yorktown Heights, May 28, 1974, 4 pages. PDF
- F. W. Blair. The definition of LISP 1.8 + 0.3i. Internal report, IBM Thomas J. Watson Research Center, 1976? [Cited in Stoyan, Padget and Fitch 1985 and Alberga et al. 1984]
- IBM Data Processing Division. LISP/370 Program Description/Operations Manual, Program Number 5796-PKL, SH20-2076-0, White Plains, New York, March 1978.
- Jon L White. LISP/370: A Short Technical Description of the Implementation, ACM SIGSAM Bulletin, Volume 12, Number 4, November 1978. ACM DL
- F.W. Blair. LISP/370 Concepts and Facilities, RC 7771 (#33639), IBM Computer Science, July 18, 1979. [Cited in Stoyan]
- Cyril N. Alberga et al. YKTLISP Program Description and Operations Manual. Computer Science Department, Thomas J. Watson Research Center, IBM Corporation, Yorktown Heights, New York, January 5, 1983, 196 pages. PDF
- Anonymous. LISP/VM User's Guide. Program Number: 5798-DQZ, SH20-6477-0, IBM Corporation, July 1984, 408 pages. PDF
- Cyril N. Alberga. LISP Assembler Program: Reference Manual. Report RA172, IBM Research Division, September 1985.
- Cyril N. Alberga, Chris Bosman-Clark, Martin Mikelsons, Mary S. Van Deusen, and Julian Padget. Experience with an uncommon Lisp. Proceedings of the 1986 ACM Conference on LISP and Functional Programming. Cambridge, Massachusetts, pages 39-53. ACM DL
- See also: [Padget 1988] under Cambridge Lisp Papers.
Applications
- C. N. Alberga, A. L. Brown, G. B. Leeman, Jr., M. Mikelsons, and M. N.
Wegman. A program development tool. Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on
principles of programming languages,
Williamsburg, Virginia, 1981, pages 92-104.
ACM DL
- A later version was published in IBM Journal of Research and Development, Volume 28, Number 1, January 1984, pages 60-73. Online at www.research.ibm.com
- G.E.Heidorn, K. Jensen, L.A. Miller, R.J. Byrd, and M.S. Chodorow. The EPISTLE Text-Critiquing System, IBM Systems Journal, Volume 21, Number 3, 1982. PDF at IBM
- James H. Davenport. The LISP/VM Foundation of Scratchpad II. The Scratchpad II Newsletter, Volume 1, Number 1, September 1, 1985, IBM Corporation, Yorktown Heights, New York.
Multics Lisp (Multics MacLisp)
- Bernard Greenberg, with contributions from Daves Moon and Reed and Carl Hoffman.
Multics MacLisp. Section 1.7.10
of: Tom Van Vleck. Multics Features.
online at
www.multicians.org
"LISP was one of the first LISP implementations on virtual memory. Multics Version I Lisp was entirely in PL/I (including its compiler, which is extremely unusual) by Dave Reed, then an undergraduate at MIT, and was part of the Standard Service System libraries. It was not compatible with any other well-known Lisp. There was no Multics software written in it, and it never achieved a following or user community.
Version II Lisp was known as 'Multics MacLisp' ... The need for it arose from the MIT Mathlab group's ... 'Macsyma' program, which was written in Lisp, hitting against the address space constraints of the PDP-10 systems on which it was developed. The large virtual memory of Multics seemed to indicate the latter as a logical migration platform, so Multics MacLisp was developed to support Macsyma.
Multics MacLisp was designed to be compatible with the large, mature, and heavily used 'MACLISP' dialect in use on the PDP-10's throughout the AI Lab and MAC, and implemented between 1970 and 1973. Reed, then an undergraduate at MIT in the Multics group, started the project by modifying Version I Lisp, writing largely in PL/I. Ultimately, several of the most performance-critical sections, most notably the evaluator, were rewritten in a tour-de-force of ALM (Multics Assembler) by Dave Moon.
...
... Greenberg chose Multics Lisp as the implementation and extension vehicles for Multics Emacs (1978), which drew attention to Lisp from all over the Multics community and to Multics from all over the Lisp community. Multics Emacs elevated Multics MacLisp to criticality in a highly visible and significant Multics offering. Multics Emacs' (see separate section) highly successful use of Lisp as (inter alia) an extension language inspired the use of Lisp as such by later generations of Emacs (e.g., GNU)."
- Jerome C. Yochelson. Multics LISP. Unpublished, Massachusetts Institute of Technology, Cambridge, Massachusetts, 1967.
- Robert R. Fenichel and Jerome C. Yochelson. A LISP garbage-collector for virtual-memory computer systems, Communications of the ACM, Volume 12, Issue 11, November 1969, pages 611-612. ACM DL
- Bernard S. Greenberg. The Multics MACLISP Compiler : The Basic Hackery -- a Tutorial. Unpublished, December, 1977. online at www.multicians.org
- Alan Bawden, Glenn S. Burke, and Carl W. Hoffman. MacLisp Extensions. Project MAC Memorandum MAC-TM-203, July 1981.
- See also: [Stallman 2002] under Emacs Lisp
ZetaLisp for Lisp Machines (CONS, CADR, Lisp Machines Inc., Symbolics, Inc.)

Source code
- Brad Parker. MIT CADR Lisp Machine source code.
online at
www.heeltoe.com
"After a long and interesting search I uncovered a set of 9-track tapes which appear to be a snapshot of the MIT CADR Lisp machine source code from around 1980. This is not the final source code and not the last source release I will make. It is, however, the first source release.
Tom Knight and others at MIT helped me secure permission from MIT's Patent office to release the software. I am indebted to him and the others for making this possible."
Documentation
- Richard Greenblatt. The LISP Machine. Working Paper 79, M.I.T. A.I. Laboratory, November 1974. PDF at bitsavers.org
- Tom Knight. CONS. Working Paper 88, M.I.T. A.I. Laboratory, November 1974. PDF at bitsavers.org
- The Lisp Machine Group (Alan Bawden, Richard Greenblatt, Jack Holloway, Thomas Knight, David Moon, Daniel Weinreb). LISP Machine Progress Report. Memo No. 444, M.I.T. Artificial Intelligence Laboratory, Massachusetts Institute of Technology, August 1977, 29 pages. PDF at MIT
- Lisp Machine Manual.
- Daniel Weinreb and David Moon. Lisp Machine Manual, Preliminary Version. MIT Artificial Intelligence Laboratory, Cambridge, Massachusetts, November 1978, 8+282 pages.
- Daniel Weinreb and David Moon. Lisp Machine Manual, Second Preliminary Version. MIT Artificial Intelligence Laboratory, Cambridge, Massachusetts, January 1979, 5+283 pages.
- Daniel Weinreb and David Moon. Lisp Machine Manual, Third Edition. MIT Artificial Intelligence Laboratory, Cambridge, Massachusetts, March 1981, 471 pages. PDF at bitsavers.org (31MB)
- Daniel Weinreb and David Moon. Lisp Machine Manual, Fourth Edition. MIT Artificial Intelligence Laboratory, Cambridge, Massachusetts, July 1981, 532 pages. PDF at bitsavers.org (31MB)
- Daniel Weinreb, David Moon, and Richard M. Stallman. Lisp Machine Manual. Fifth Edition, System Version 92, MIT Artificial Intelligence Laboratory, Cambridge, Massachusetts, January 1983, 692 pages. PDF at bitsavers.org
- Richard M. Stallman, Daniel Weinreb, and David Moon. Lisp Machine Manual.
Sixth Edition, System Version 99,
MIT Artificial Intelligence Laboratory, Cambridge, Massachusetts, June 1984.
- 859 pages. PDF at bitsavers.org
- Hypertext edition. Prerelease version. online at bknr.net
- Richard Stallman, Daniel Weinreb, and David Moon. Lisp Machine Window System Manual. Edition 1.1, System Version 95, MIT Artificial Intelligence Laboratory, Cambridge, Massachusetts, August 1983, 261 pages. PDF at bitsavers.org
- Thomas F. Knight, Jr., David A. Moon, Jack Holloway, and Guy L. Steele, Jr. CADR.
AI Memo 528, Artificial Intelligence Laboratory, Massachusetts Institute of
Technology.
- March 31, 1981, i+79+8 unnumbered pages. PDF at www.heeltoe.com
See also: Brad Parker. Some notes on the MIT CADR "principles of operation". October 17, 2004. Online at www.heeltoe.com
- May 1979, i+1 unnumbered page+42 pages. PDF at MIT
This copy repeats page 17 twice and is missing pages 18 and 24.
Abstract: The CADR machine, a revised version of the CONS machine, is a general-purpose, 32-bit microprogrammable processor which is the basis of the Lisp-machine system, a new computer system being developed by the Laboratory as a high-performance, economical implementation of Lisp. This paper describes the CADR processor and some of the associated hardware and low-level software.
- Anonymous. ZetaLisp Reference Manual, Symbolics, Cambridge, MA, 1984. [Cited by HOPL.]
Emulators
- Brad Parker. MIT CADR LISP Machine emulator.
Online at www.unlambda.com
- MIT CADR Lisp Machine Source code. Online at www.unlambda.com
- Brad Parker. Texas Instruments Explorer emulators. Site includes some software.
Online at www.unlambda.com
- Nevermore - TI Explorer I (E1). Online at www.unlambda.com
- Meroko - TI Explorer I (E1). Online at www.unlambda.com
- E3 Project. Not currently maintained. Online at www.unlambda.com
Other links
- See also: [Stallman 2002] under Emacs Lisp
- Jaap Weel. Lisp Machines. Online at www.ugcs.caltech.edu
Interlisp-D
"I think the right thing to do, when thinking about the history of Interlisp, is to distinguish between INTERLISP, a teletype/interactive terminal timesharing system application and Interlisp-D, a single user, window/mouse/keyboard, personal workstation system based on a single virtual machine.
INTERLISP ran on Tenex, Tops-20, VAX. There was a 'Jericho' port at BBN. There were discussions of ports to IBM System/360, but I don't think they were real.
INTERLISP programs could generally be ported to Interlisp-D with no changes to source code. Interlisp-D programs were binary compatible; it was possible to suspend and save the state of one of the virtual machines on one workstation (make a 'sysout') and restart it on another. In fact, the software build process consisted of us running a kernel Lisp loader that fired up an initial image, that then used Lisp code to load the rest of the system.
'Alto Lisp' was an interim step in the evolution between INTERLISP and Interlisp-D.
Interlisp-D ran on Dorado (Xerox 1132), Dolphin (Xerox 1100), Dandelion (Xerox 1108), Daybreak (?), all microcoded machines. The Dandelion and Daybreak used the same microcode, but the other machines were independent. The Dorado and Dolphin implementations had an Alto/BCPL operating system "boot loader", and some kernel OS functions like disk access were implemented in BCPL. The Dandelion and Daybreak machines had microcoded boot loaders.
There was a port of the byte-code interpreter to C started by Fuji Xerox and finished at PARC. The result was a version of Interlisp-D that ran on Suns and Unix. This implementation was later ported to Linux.
At some point during the evolution of Interlisp-D, a full implementation of Common Lisp was included; Interlisp and Common Lisp code shared the same runtime."
[Larry Masinter. Personal communication to Paul McJones, June 9, 2005]
Documentation
- Michael Sannella, editor. Interlisp Reference Manual. Xerox Corporation, October 1983.
- Michael Sannella, editor. Interlisp-D Reference Manual. Xerox
Corporation, October 1985.
- Volume I: Language. PDF at www.bitsavers.org
- Volume II: Environment. PDF at bitsavers.org
- Volume III: Input/Output. PDF at bitsavers.org
- Anonymous. Interlisp-D Release Notes. Xerox Corporation, December 1985.
PDF at bitsavers.org
This describes the Kyoto release, which was followed by the Lyric and final Medley releases. "Lisp ist eine reine Interlisp-D Umgebung (übrigens hat Rainer Joswig das Einleitungshandbuch online gestellt, auch ist ein Film über die Benutzung von Interlisp-D online), wohingegend in Lyric Lisp noch zusätzlich eine Implementation von Common Lisp hinzugekommen ist. Medley Lisp ist der direkte Nachfolgerelease von Lyric Lisp, also stark Common Lisp zentrisch, wobei die Systembasis immer noch auf Interlisp-D aufbaut. Medley Lisp läuft nicht mehr auf Lispmaschinen, sondern wird über einen Emulator auf verschiedene Plattformen gebracht." [Georg Bauer. Medley Lisp. Online at Hugos House of Weblog Horror]
- Cynthia Cosic. Interlisp-D: A Friendly Primer. Artificial Intelligence Systems, Xerox Corporation, November 1986. PDF at bitsavers.org
- Lyn Ann Mears and Ted Rees. Xerox LOOPS, A Friendly Primer. Artificial Intelligence Systems, Xerox Corporation, March 1987. PDF at bitsavers.org
- Anonymous. Xerox Common Lisp Implementation Notes. Lyric Release,
June 1987.
PDF at bitsavers.org Index.
PDF at bitsavers.org
"These notes are intended to accompany the Guy L. Steele book, Common Lisp: the Language which represents the current standard for Common Lisp."
Papers
- L. Peter Deutsch. A LISP machine with very compact programs. Proceedings of the Third International Joint Conference on Artificial Intelligence, Stanford University, California, 1973. PDF
- L. Peter Deutsch and Daniel G. Bobrow. An efficient, incremental, automatic garbage collector. Communications of the ACM, Volume 19, Issue 9, September 1976, pages 522-526. ACM DL
- L. Peter Deutsch. Experience with a microprogrammed Interlisp system. Proceedings of the 11th annual workshop on Microprogramming, Pacific Grove, California, 1978, pages 128-129. ACM DL
- Daniel G. Bobrow and Douglas W. Clark. Compact Encodings of List Structure. ACM Transactions on Programming Languages and Systems, Volume 1, Number 2, October 1979, pages 266-286. ACM DL
- Larry M. Masinter and L. Peter Deutsch. Local optimization in a compiler for stack-based Lisp machines. Proceedings of the 1980 ACM conference on LISP and functional programming, Stanford University, pages 223-230. ACM DL
- L. Peter Deutsch. ByteLisp and its Alto implementation. Proceedings of the 1980 ACM conference on LISP and functional programming, Stanford University, pages 231-242. ACM DL
- Richard R. Burton, L. M. Masinter, Daniel G. Bobrow, Willie Sue Haugeland, Ronald M. Kaplan, and B. A. Sheil. Overview and status of DoradoLisp. Proceedings of the 1980 ACM conference on LISP and functional programming, Stanford University, pages 243-247. ACM DL
- Richard R. Burton, Ronald M. Kaplan, Larry M. Masinter, B.A. Sheil, Alan Bell, Daniel G. Bobrow, L. Peter Deutsch and Willie Sue Haugeland. Papers on Interlisp-D. Report SSL-80-4 revised, Palo Alto Research Center, Xerox Corporation, September 1980, ii+52 pages. PDF
- Beau Sheil. INTERLISP-D: Further Steps in the Flight from Time-Sharing.
ACM SIGART Bulletin, Issue 77, July 1981, pages 31-32.
ACM DL
A version of this paper was included in the revised version of SSL-80-4 revised.
Implementation - commercial
- Medley Common LISP And Developers' Tools. Online at Venue Corporation
Scheme
- Gerald Jay Sussman and Guy Lewis Steele, Jr. SCHEME: An Interpreter for Extended Lambda Calculus. AI Memo No. 349, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, December 1975, 43 pages. PDF at MIT
- Guy Lewis Steele, Jr. and Gerald Jay Sussman. LAMBDA: The Ultimate Imperative. AI Memo No. 353, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, March 10, 1976, 40 pages. PDF at MIT
- Guy Lewis Steele, Jr. LAMBDA: The Ultimate Declarative. AI Memo No. 379, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, November 1976, 47 pages. PDF at MIT
- Guy Lewis Steele, Jr. Debunking the "Expensive Procedure Call" Myth; or,
Procedure Call Implementations Considered Harmful; or, LAMBDA: The Ultimate GOTO. AI Memo No. 443, Artificial Intelligence Laboratory, Massachusetts
Institute of Technology, October 1977, 23 pages.
PDF
at MIT
A version of this report was published in Proceedings of the 1977 ACM annual conference, pages 153-162. ACM DL
- Guy Lewis Steele, Jr. and Gerald Jay Sussman. The Revised Report on SCHEME: A Dialect of LISP. AI Memo No. 452, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, January 1978, 35 pages. PDF at MIT
- Guy Lewis Steele, Jr. and Gerald Jay Sussman. The Art of the Interpreter; or, The Modularity Complex (Parts Zero, One, and Two). AI Memo No. 453, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, May 1978, 75 pages. PDF at MIT
- Guy Lewis Steele, Jr. RABBIT: A Compiler for SCHEME (A Study in Compiler
Optimization). Technical Report
474, Artificial Intelligence Laboratory, Massachusetts Institute of
Technology, May 1978, 282 pages.
PDF
at MIT
The Appendix includes an annotated listing of the compiler, written in SCHEME. See also Source Code, below.
- Guy Lewis Steele, Jr. and Gerald Jay Sussman. Design of LISP-based
Processors; or, SCHEME: A Dielectric LISP, or Finite Memories Considered
Harmful; or, LAMBDA: The Ultimate Opcode. AI Memo No. 514, Artificial
Intelligence Laboratory, Massachusetts Institute of Technology, March 1979,
75 pages.
PDF
at MIT
A version of this report was published as: Design of a Lisp-based Microprocessor. Communications of the ACM, Volume 23, Issue 11, November 1980, pages 628-645. ACM DL
- Guy Lewis Steele, Jr. Compiler Optimization Based on Viewing LAMBDA as RENAME + GOTO. AI: An MIT Perspective, 1980.
- William Clinger, editor. The Revised Revised Report on Scheme; or, An UnCommon Lisp. AI Memo No. 848, Artificial Intelligence Laboratory,
Massachusetts Institute of Technology, August 1985, 76 pages.
PDF
at MIT
Also published as: Technical Report 174, Computer Science Department, Indiana University, June 1985.
- Jonathan Rees and William Clinger, editors. Revised3 Report on the Algorithmic Language Scheme. SIGPLAN Notices Volume 21, Number 12, December 1986, pages 37-79. ACM DL
- William Clinger and Jonathan Rees, editors. Revised4 Report on the Algorithmic Language Scheme. In ACM Lisp Pointers Volume 4, Number 3, July 1991, pages 1-55. ACM DL http://www.cs.indiana.edu/scheme-repository/doc.standards.html
- IEEE. IEEE Standard for the Scheme Programming Language. IEEE Standard 1178-1990, ISBN 1-55937-125-0, 1991.
- Richard Kelsey, William Clinger, and Jonathan Rees, editors. Revised5 Report on the Algorithmic Language Scheme. Higher-Order and Symbolic Computation, Volume 11, Number 1, August 1998, pages 7-105. Online at www.brics.dk Other formats via www.schemers.org
- Jim Bender, editor. Bibliography of Scheme-related Research. Online at library.readscheme.org
- Chris Hanson, maintainer. RRRS-Authors Mailing-List Archive. Mailing list of the authors of the Scheme reports, 1984-1998. Online at www.swiss.ai.mit.edu
- R. Kent Dybvig. The Scheme Programming Language. Third Edition, The MIT Press, 2003. Online at www.scheme.com
Source code
- Guy L. Steele, Jr. RABBIT. Scheme compiler written in Scheme, 1978. Online at CMU Scheme Repository
- Bruce G. Baumgart, archivist.
SAILDART Archives, Artificial Intelligence Laboratory, Stanford University.
online
- [SCH,LSP] Scheme for TOPS-20 operating system, as used by students in M.I.T.'s 6.001. [Adapted for WAITS?] online
- Ozan S. Yigit, David Eby, and John Zuckerman. The Internet Scheme Repository. Web site, last updated 1998 (no longer being maintained). Online at www.cs.indiana.edu
- Mark Kantrowitz. CMU Scheme Repository. Web site, last updated February 13, 1995 (no longer being maintained). Online at CMU AI Repository
- Matthias Radestock, original editor. category-implementations, Community Scheme Wiki, Revision 35, April 6, 2007. Online at community.schemewiki.org
Implementation papers
- Mitchell Wand. SCHEME 3. 1 REFERENCE MANUAL, Technical Report 93, Department of Computer Science, Indiana University, June 1980.
- Carol Fessenden, William Clinger, Daniel P. Friedman, and Christopher Haynes. Scheme 311 Version 4 Reference Manual. Technical Report 137, Department of Computer Science, Indiana University, February 1983.
- D.P. Friedman, C.T. Haynes, E. Kohlbecker and M. Wand. Scheme 84 Interim Reference Manual. Technical Report 153, Department of Computer Science, Indiana University, February 1984 (revised June 1985).
- William Clinger. The Scheme 311 compiler: An exercise in denotational semantics. Proceedings of the 1984 ACM Symposium on LISP and functional programming, Austin, Texas, pages 356–364. ACM DL
- Joel Bartlett. SCHEME->C : a Portable Scheme-to-C Compiler. Research Report 89/1, Western Research Laboratory, Digital Equipment Corporation, January 1989. Online at HP Labs
Books
- Harold Abelson and Gerald Jay Sussman with Julie Sussman. Structure and Interpretation of Computer Programs. Second Edition. The MIT Press, 1996. Complete text in HTML. Online at mitpress.mit.edu
T
T was based on Scheme and was started at Yale University in 1981 by Jonathan A. Rees and Norman I. Adams IV. [See Rees and Adams 1982.]
Source code
- Jonathan Rees. The T Project. Website, December 2004.
Online at mumble.net
- Version 2.9. .tar.gz at mumble.net
- Version 3.0. .tar.gz at mumble.net
- Taylor R. Campbell. T repository. Website, January 2010. Online at people.csail.mit.edu
- Version 3.1-ai.
.tar at people.csail.mit.edu
"From an FTP site at the AI lab, no longer operational as far as I know. Latest file is dated 1990-06-15. Includes CISC (VAX, for Ultrix (but not VMS); m68k, for HP-UX, SunOS, A/UX, and Apollo), N32/Encore Multimax, and RISC (MIPS/pmax and SPARC v8, for Ultrix and SunOS) ports, in source and executable binary forms, as well as the manual in several formats."
- Version 3.1-funet.
.tar at people.csail.mit.edu
"From < ftp://ftp.funet.fi/pub/languages/scheme/impls/t3.1/>, but I don't know for how long that will remain operational. Latest file is dated 1990-09-25. Includes all of the above, plus m68k/NeXT."
- Version 3.1-cag.
.tar at people.csail.mit.edu
"From an FTP site at the AI lab's Computer Architecture Group, no longer operational as far as I know. Latest file is dated 1993-02-18, except for the README which was updated 1993-09-15 and 1996-07-17. This includes only the RISC ports (MIPS/pmax, MIPS/sgi, and SPARC v8), as well as an Xlib interface."
- Version 3.1-ai.
.tar at people.csail.mit.edu
- T mailing list archive. .tar.bz2 at people.csail.mit.edu
- Version 3.1 source code. Online at Internet Scheme Repository
Documentation
- Jonathan A. Rees, Norman I. Adams, and James R. Meehan. The T Manual, third Edition, Computer Science Department, Yale University, New Haven, Connecticut, May 3, 1983.
- Jonathan A. Rees, Norman I Adams IV, and James R. Meehan. The T manual, fourth edition. Computer Science Department, Yale University, January 1984. PDF at repository.readscheme.org
- Jonathan A. Rees, Norman I Adams IV, and James R. Meehan. The T manual, fifth edition ("Pre-Beta Draft"). Computer Science Department, Yale University, 1988. PDF at people.csail.mit.edu
Papers
- Jonathan A. Rees and Norman I. Adams IV. T: A Dialect of Lisp; or, LAMBDA: The ultimate software tool. Proceedings of the 1982 ACM Symposium on Lisp and Functional Programming, pages 114-122. ACM DL PDF at fresh.homeunix.net PDF at people.csail.mit.edu
- D.A. Krantz, R. Kelsey, J.A. Rees, P. Hudak, J. Philbin and N.I. Adams. ORBIT: An optimizing compiler for Scheme. Proceedings SIGPLAN 1986 Symposium on Compiler Construction, SIGPLAN Notices Volume 21, Number 7, pages 219-223. ACM DL PDF at people.csail.mit.edu
- D.A. Kranz, R.H. Halstead, and E. Mohr. Mul-T: a high-performance parallel Lisp. Proceedings SIGPLAN 1987 Symposium on Interpreters and Interpretive Techniques, SIGPLAN Notices Volume 24, Number 7 (July 1989), pages 81-90. ACM DL PDF at people.csail.mit.edu
- David Andrew Kranz. ORBIT: An Optimizing Compiler for Scheme. Technical Report YALEU/DCS/RR-632, Yale University, February 1988. Online at readscheme.org
- Richard Kelsey and Paul Hudak. Realistic Compilation by Program Transformation : Detailed Summary. Proceedings of the 16th Annual ACM Symposium on Principles of Programming Languages, 1989, pages 281-292. ACM DL PostScript at people.csail.mit.edu
- Olin Shivers. History of T, December 2001.
http://www.paulgraham.com/thist.html
Originally appeared as: Olin Shivers. T. Posting to LL1-Discuss@ai.mit.edu mailing list, December 11, 2001. online
New Implementation of Lisp (NIL), S-1 Lisp
"NIL, intended to be the successor to MacLisp, was designed by Jon L White, Guy L. Steele Jr., and others at MIT, under the influence of Lisp-Machine Lisp, also developed at MIT. Its name was a too-cute acronym for 'New Implementation of Lisp' and caused a certain amount of confusion. NIL was a large Lisp, and efficiency concerns were paramount in the minds of its MacLisp-oriented implementors; soon its implementation was centered around a large VAX assembly-language base.
In 1978, Gabriel and Guy Steele set out to implement NIL on the S-1 Mark IIA, a supercomputer being designed and built by the Lawrence Livermore National Laboratory. This Lisp was never completely functional, but served as a testbed for adapting advanced compiler techniques to Lisp implementation. In particular, the work generalized the numerical computation techniques of the MacLisp compiler and unified them with mainstream register allocation strategies. With the development of the S-1 Lisp compiler, it once again became feasible to implement Lisp in Lisp and to expect similar performance to the best hand-tuned, assembly-language-based Lisp systems." [Steele and Gabriel 1993]
Documentation
- Brent T. Hailpern and Bruce L. Hitson. S-1 Architecture Manual. Technical Report 161 (STAN-CS-79-715), Department of Electrical Engineering, Stanford University, January 1979. PDF at bitsavers.org
- G. Burke. Introduction to NIL. Laboratory for Computer Science, Massachusetts Institute of Technology, March 1983.
- G.S. Burke, G.J. Carrette, and C.R. Eliot. NIL Notes for Release 0.259, Laboratory for Computer Science, Massachusetts Institute of Technology, June 1983.
- G.S. Burke, G.J. Carrette, and C. R. Eliot. NIL Reference Manual. Report MIT/LCS/TR-311, Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, Massachusetts, 1983.
Papers
- Steven Correll. S-1 uniprocessor architecture (sma-4). Volume I, Chapter 4, The S-1 Project 1979 Annual Report, Lawrence Livermore Laboratory, Livermore, California, 1979.
- Jon L. White. Nil: A perspective. Proceedings of 1979 Macsyma Users' Conference, Washington, D.C., June 1979.
- Rodney A. Brooks, Richard P. Gabriel, and Guy L. Steele Jr. S-1 Common Lisp Implementation. Proceedings of the 1982 ACM symposium on LISP and functional programming, Pittsburgh, 1982, pages 108–113. ACM DL
- Rodney A. Brooks, Richard P. Gabriel, and Guy L. Steele Jr. An optimizing compiler for a lexically scoped LISP. Proceedings of the 1982 Symposium on Compiler Construction, Boston, June 1982, pages 261-275. ACM DL
- Mark Smotherman. S-1 Supercomputer (1975-1988). Web site, last updated April 24, 2004. http://www.cs.clemson.edu/~mark/s1.html
- NIL is discussed in this article/response pair:
- Olin Shivers. History of T. 2001. http://www.paulgraham.com/thist.html
- Dan Weinreb: Dan Weinreb on NIL. http://www.paulgraham.com/weinreb.html
Spice Lisp
"Spice Lisp provided two significant contributions to the Common Lisp effort. One is the draft Common Lisp manual, which was derived from the Spice Lisp manual (and also borrowed heavily from MIT Lisp Machine Manuals) and the other is a reference implementation. For several years after the appearance of CLtL I, Spice Lisp served as the source, literally, for a number of Common Lisp implementations. Computer companies would take the free source code and port it to their computers, providing a base level Common Lisp." [Steele and Gabriel 1993]
Documentation
- S.E. Fahlman. Spice LISP Status. Department of Computer Science, Carnegie-Mellon University, Pittsburgh, March 31, 1981. [From Stoyan]
- G.L. Steele, Jr. Spice Lisp Reference Manual. Technical Report, Carnegie Mellon University (interim Spice Lisp documentation), 1981. [Cited in David S. Touretzky. A comparison of reduction in APL with polyarity in LISP. Proceedings of the International Conference on APL, 1983, pages 259-263. ACM DL]
- S.E. Fahlman, G.L. Steele, G.E. Kaiser, W. van Roggen. Internal Design
of Spice Lisp. Doc. S026, Spice Project, Department of Computer Science,
Carnegie-Mellon University, Pittsburgh, Pennsylvania, December 20, 1981.
PDF
Stoyan cites this document number as July 19, 1982.
- See also: [Wholey et al. undated] under Rutgers Common Lisp for TOPS-20 on DECSYSTEM-20, below.
Papers
- Skef Wholey and Scott E. Fahlman. The Design of an Instruction Set for Common Lisp. Proceedings of the 1984 ACM Symposium on LISP and Functional Programming, Austin, Texas, pages 150-158. ACM DL
Standard LISP, Portable Standard LISP (PSL)
Standard LISP arose from a desire to port REDUCE (see Stanford LISP 1.6 Applications, above, and Applications, below) to other systems.
Source code
- E. Karabudak, G. Üçoluk, and T. Yilmaz. Portable Utah Standard LISP, public release 6.1, June 1993. Online at www.ceng.metu.edu.tr
Documentation
- A.C. Hearn. Standard LISP. Memo AIM-90, Stanford Artificial Intelligence Project, Stanford University, May 1969, 33 pages. PDF
- Anthony C. Hearn. Standard LISP. SIGPLAN Notices, Volume 4, Number 9, September 1969, pages 25-45. ACM DL
- J.B. Marti, A.C. Hearn, M.L. Griss, and C. Griss. Standard LISP Report. University of Utah Symbolic Computation Group Report No. 60, Provo, Utah, 1978. [From McCarthy]
- I.B. Frick. Manual for Standard LISP on the DECSYSTEM 10 and 20. Technical Report TR-2, Utah Symbolic Computation Group, University of Utah, July 1978.
- J.B. Marti, A.C. Hearn, M.L. Griss, and C. Griss. Standard LISP Report.
SIGPLAN Notices, Volume 14, No. 10, ACM, October 1979, pages 48-68. ACM DL
The 1979 report gives the date for Hearn's original Standard LISP article in SIGPLAN Notices as Volume 4, Number 9, September 1966, but the actual year was 1969.
- M.L. Griss and B. Morrison. The Portable Standard LISP Users Manual.
Technical Report TR-10, Utah Symbolic Computation Group, Department of
Computer Science, University of Utah, March 1981. (PSL version 3, 6 May
1982)
"Abstract: This manual describes the primitive data structures, facilities and functions present in the Portable Standard LISP (PSL) system. It describes the implementation details and functions of interest to a PSL programmer. Except for a small number of hand-coded routines for I/O and efficient function calling, PSL is written entirely in itself, using a machine-oriented mode of PSL, called SYSLISP, to perform word, byte, and efficient integer and string operations. PSL is compiled by an enhanced version of the Portable LISP Compiler, and currently runs on the DEC-20, VAX, and MC68000."
- Herbert Melenk and Winfried Neun. Portable Standard Lisp Implementation for Cray X-MP Computers : Release of PSL 3.4 for COS. Technical Report TR 87-2, Konrad-Zuse-Zentrum für Informationstechnik Berlin, September 1986. PDF at www.zib.de
- Herbert Melenk and Winfried Neun. Portable Common Lisp Subset Implementation for Cray X-MP Computers Installation Guide for COS. Technical Report TR 87-3, Konrad-Zuse-Zentrum für Informationstechnik Berlin, April 1987. PDF at www.zib.de
- J.B. Marti, A.C. Hearn, M.L. Griss, and C. Griss. Standard LISP Report. Date? Online at www.reduce-algebra.com
Papers
- M.L. Griss. BIL: A Portable Implementation Language for LISP-Like Systems. Operating Note No. 36, Symbolic Computation Group, University of Utah, 1977.
- J. Fitch and J. Marti. A Small Standard LISP Interpreter. Symbolic Computation Group, University of Utah, 1978.
- J. Fitch and J. Marti. SLISP - A Standard LISP Implementation in SDL. Operating Note 37, Symbolic Computation Group, University of Utah, March 1978.
- J. Fitch and J. Marti. SLISP - The B-Interpreter. Symbolic Computation Group, University of Utah, 1978.
- J.B. Marti and J. Fitch. SLISP, A Standard LISP Implementation in a High Level Language. REDUCE Newsletter, Vol. I, No. 2, April 1978, pages 14-17.
- J. Fitch and J.B. Marti. SLISP – A Standard LISP Implementation for the Burroughs 1700. Operating Note 37, Utah Symbolic Computation Group, University of Utah, 1978.
- John Fitch. Manual for Standard Lisp on IBM System 360 and 370.
Technical Report No. TB-6, Symbolic Computation Group, University of Utah.
This was based on "Stanford Lisp for the IBM/360" according to [Padget 1988].
- Martin L. Griss, Robert R. Kessler, and Gerald Q. Maguire, Jr. TLISP – A Portable LISP Implemented in P-code. Proceedings of the International Symposium on Symbolic and Algebraic Computation, June 1979, pages 490-502. In E. W. Ng, Ed. Lecture Notes In Computer Science, vol. 72. Springer-Verlag, London, 490-502.
- I.B. Frick. A Portable Lap and Binary Loader. Operating Note 52, Utah Symbolic Computation Group, University of Utah, November 1979.
- Martin L. Griss and Anthony C. Hearn. A portable LISP compiler.
Software--Practice and Experience, Volume 11, June 1981, pages 541-605.
Originally appeared as Report UCP-76, Utah Symbolic Computation Group, University of Utah, June 1979.
- Eric Benson and Martin L. Griss. SYSLISP: A Portable LISP-based Systems Implementation Language. UCP-81, Department of Computer Science, University of Utah, Feburary 1981, (last revised 7 April 1981), 12 pages.
- Martin L. Griss, Eric Benson, and Anthony C. Hearn. Current Status of a
Portable LISP Compiler. Proceedings of the 1982 SIGPLAN Symposium on
Compiler Construction, Boston, 1982, pages 276-283.
ACM DL
Originally appeared as Report UCP-82, Utah Symbolic Computation Group, Department of Computer Science, University of Utah, January 1982.
- W. Galway and M.L. Griss. An Editor Interface for a Portable Lisp Programming Environment. Opnote 64, Utah Symbolic Computation Group, Department of Computer Science, University of Utah, January 1982.
- I. G. Frick and R. Fogelholm. An Implementation of Standard LISP Built on Top of Franz Lisp. Institute of Physics, University of Stockholm, April 1982.
- M.L. Griss. Some Notes on the Basic PSL Timing Tests. Opnote 66, Utah Symbolic Computation Group, Department of Computer Science, University of Utah, May 1982 (preliminary version).
- Martin L. Griss, Eric Benson, and Gerald Q. Maguire Jr. PSL: A Portable
LISP System. In Proceedings of the 1982 ACM symposium on LISP and
functional programming, pages 88-97.
ACM DL
Originally appeared as Report UCP-83, Department of Computer Science, University of Utah, May 1982, 10 pages.
- R. R. Kessler, J. C. Peterson, H. Carr, G. P. Duggan and J. Knell. EPIC – a retargetable, highly optimizing Lisp compiler. Proceedings of the 1986 SIGPLAN Symposium on Compiler Contruction, Palo Alto, California, pages 118-130. ACM DL
- Herbert Melenk and Winfried Neun. Portable Standard LISP for Cray X-MP Computers. Preprint SC 86-2, Konrad-Zuse-Zentrum für Informationstechnik Berlin, Dezember 1986. PDF at www.zib.de
- J. Wayne Anderson, William F. Galway, Robert R Kessler, Herbert Melenk and Winfried Neun. The Implementation and Optimization of Portable Standard Lisp for the Cray. Preprint SC 87-1, Konrad-Zuse-Zentrum für Informationstechnik Berlin, January 29,1987. PDF at www.zib.de
- See also: [Padget 1988] under Cambridge Lisp Papers.
- Mark Swanson, Robert Kessler, Gary Lindstrom. An implementation of Portable Standard LISP on the BBN Butterfly. Proceedings of the 1988 ACM Conference on LISP and Functional Programming, Snowbird, Utah, pages 132-142. ACM DL
"A version of this paper appeared in the proceedings of the 20th annual Hawaii International Conference on Systems Sciences, January 1987. It has been revised to include the work of Melenk and Neun."
Applications
- A.C. Hearn. REDUCE 2 User's Manual, Memo No. AIM-133, Stanford Artificial Intelligence Project, October 1970.
- A.C. Hearn. REDUCE 2: A system and language for algebraic manipulation. In Proceedings of the Second Symposium on Symbolic and Algebraic Manipulation, Los Angeles, March 1971, pages 128-133. ACM DL
- A.C. Hearn. REDUCE 2 Users Manual. Report UCP-19, Symbolic Computation Group, Department of Computer Science, University of Utah, 1973.
- Anthony C. Hearn. REDUCE. Website.
Online at reduce-algebra.com
Bibliography, characteristics, documentation, available packages, related projects, and information about ordering latest release.
Cambridge Lisp
"Cambridge Lisp was developed in the period just after Lisp/370 and during the second phase of Standard Lisp, but before Portable Standard Lisp. The authors of Cambridge Lisp were individually involved in Standard Lisp and Lisp/370 and these experiences are reflected in the structure of Cambridge Lisp. As with Standard Lisp, Cambridge Lisp was borne out of a need to support algebra research but rather than following the Standard Lisp report word for word, there was a strong influence from the heavier emphasis placed on semantics by Lisp/370." [Padget 1988]
Cambridge Lisp was written in BCPL. More recently, its authors produced a C-based successor under the Codemist brand.
Source code
- Codemist Standard Lisp with support for Axiom: Online at codemist.co.uk
Papers
- J.P. Fitch and A.C. Norman. Implementing LISP in a High-level Language. Software Practice and Experience, Volume 7, 1977, pages 713-725.
- John Fitch and A. C. Norman. A Note on Compacting Garbage Collection. Computer Journal, Volume 21, Number 1, February 1978, pages 31-34. Online at Oxford Journals
- Julian Padget and John Fitch. Closurize and concentrate, Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, New Orleans, Louisiana, 1985, pages 255-265. ACM DL
- Julian Padget. Three Uncommon Lisps. Proceedings of the First International Workshop on LISP Evolution and Standardization, February 22-23, 1988, Paris France, Published by IOS, Amsterdam, 1988, pages 39-44. PDF
Uppsala Lisp: F1, F3 and F4
Mats Nordström and his colleagues at the University of Uppsala in Sweden developed a series of Lisp implementations written in Fortran.
"LISP 1.5 INTERPRETER WRITTEN IN FORTRAN
A simple Lisp 1.5 interpreter has been written in Fortran by Mats Nordstrom at Uppsala University. The system follows closely the definition of eval given in the Lisp 1.5 User' Manual; in particular, it uses an A-list (rather than a linear stack for variable bindings). Some 'modern' features have been included, such as nospread lambdas and implicit progns.
The interpreter is oriented toward interactive use, but with minor modifications it can be used in batch mode. It is intended for those who want to implement Lisp quickly and provisionally for a new computer, and for tutorial purposes in teaching interpreters and Lisp implementation. The program is carefully commented and documented. Educational and research institutions can obtain a copy free of charge by writing to the following address: Mats Nordstrom, Datalogilaboratoriet, Sysslomansgaten 25, S-752 23, Uppsala, Sweden." [SIGPLAN Notices, Volume 6, Number 5, July 4, 1971, page 6 (News section) ACM DL]
The original motivation was to be able to run Lisp programs on computers elsewhere in Sweden via a remote processing capability; the portability allowed these systems to be ported to various computers at Uppsala and elsewhere. Lisp F1 was compatible with Lisp 1.5 with extensions from BBN Lisp; it was written in Fortran IV and ran on IBM computers. Its development began in January 1970, and it was usable by September 1970; subsequent work increased its performance. Lisp F3 was compatible with INTERLISP, and thus could run many INTERLISP packages such as EDIT, MAKEFILE, BREAK, ADVISE and TRACE. Its development began in 1976. For more detail, see chapter 4 of Herbert Stoyan's book [online at uni-erlangen.de].
Nordström produced a final version, Lisp F4, in the early 1980s; see below.
Source code
- Blake McBride. C translation of Mats Nordström's Lisp F4. Online at blake.mcbride.name
Nordström supplied McBride what is believed to be the final snapshot of Lisp F4, from August 22, 1983, with permission to distribute it. McBride includes Nordström's original code absolutely complete and untouched including documentation, Fortran source code, lisp code, etc. -- see the file lispf4.orig in the archive.
Documentation
(Most of these items are from Stoyan.)
- M. Nordström, E. Sandewall and J. Urmi. How to Start Using Uppsala's 3600 LISP System, Report No. 23, Department of Computer Sciences, Uppsala University, August 1969.
- M. Nordström, E. Sandewall, and D. Breslaw. LISP F1, a FORTRAN Implementation of LISP 1.5, Datalogilaboratoriet, Department of Computer Sciences, Uppsala University, 1971.
- G.R. Hoffmann and L. Timner and H. Wallberg. LISP F 1.1 for CDC-3000 L Computer Series, Zentrum f. Datenverarbeitung, Universität Tuebingen, April 1971.
- G.R. Hoffmann, L. Timner, and H. Wallberg. LISP F 1: Interne Beschreibung, Zentrum f. Datenverarbeitung, Universität Tuebingen, 1971?.
- See INTERLISP/360-370 manuals in Interlisp section.
- Mats Nordström. LISP F3 User's Guide. Department of Computer Science, Uppsala University.
- Technical Report DLU 78/4, Datalogilaboratoriet, June 1978.
- Technical Report DLU 79/1, Uppsala Programming Methodology and Artificial Intelligence Laboratory, 1979.
- Technical Report DLU 79/19, Uppsala Programming Methodology and Artificial Intelligence Laboratory, 1979.
- Mats Nordström. LISP F3: Implementation guide and system description. Datalogilaboratoriet, Department of Computer Science, Uppsala University, June 1978.
- Nick Briggs and Andrew Gullen. CP-6 LISP USERS GUIDE, Carleton University Computing Centre, Ottawa, Ontario, CANADA, K1S 586, May 1980. Revised version of: Mats Nordström, LISP F3 User's Guide, Technical Report DLU 78/4, Datalogilaboratoriet, Department of Computer Science, Uppsala University, June 1978. PDF
CP-6 was an operating system for the Honeywell 6000 series.
ECSD LISP
Edinburgh Computer Science Department Lisp, or ECSD LISP, was implemented by N. H. Shelness. It was written in the IMP programming language and ran on the EMAS operating system. The Wikipedia IMP article contains links to a variety of information about IMP, including compilers targetted atmodern platforms.
Source code
- N.H. Shelness. LISP for EMAS. Edinburgh Regional Computer Center, IMP source code. Online at history.dcs.ed.ac.uk
- Initialization script. Online at history.dcs.ed.ac.uk
This version contains the annotation "Updated by R.D. Eager University of Kent MCMLXXXII".
Documentation
- N.H. Shelness. The E.C.S.D. LISP manual. Draft of December, 1976.
VLISP
"Vlisp was the precursor to Le_Lisp, one of the important Lisp dialects in France and Europe during the 1980's; though the dialects were different, they shared some important implementation techniques." [Steele and Gabriel 1993]
Source code
- Paul Mennen, submitter. VLISP-11. DECUS PDP-11 Software Index number 110617, March 1984.
- Patrick Greussay, Harald Wertz, Ernesto Sendoya, and Damien Ploix. XbVLISP. Online at www.ai.univ-paris8.fr: [French] [English]
Abstract: VLISP-11 is a complete LISP programming environment which will run on any model PDP-11 or LSI-11. The VLISP interpreter is written in MACRO assembly language and implements 160 LISP functions including several I/O functions providing access to the RT-11 file structure. The rest of the package is written in VLISP and includes a pretty-printer (with parenthesis matching and commenting facilities), a save utility, a list oriented editor, a debugger, a file transfer utility, and an infinite precision floating point package. Additional versions are included which utilize the EIS or EIS/FIS instructions.
Mennen obtained the source code from Patrick Greussay and made various bug fixes and improvements, marked in the source code with "[PM]".
- Source. .tar.gz
- Online documentation in French. HTML
- Harald Wertz. LISP : Une Introduction a La Programmation. Masson Editions, 1985. Based on VLISP. Online
- Harald Wertz. VLISP applications. Online at www.ai.univ-paris8.fr
- Utilities. VLISP source
- Pattern matching. VLISP source
- Weizenbaum's Eliza. VLISP sources: Base Standard Variant
- Newell's and Simon's GPS. Adapted from Peter Norvig: Paradigms of AI Programming. VLISP sources: BaseStandard Variant
- Bobrow's Student. Adapted from Peter Norvig: Paradigms of AI Programming. VLISP source
- Phenarete: automatic correction of programs. See: Harald Wertz. A system to improve incorrect programs. VLISP source
Documentation
- Patrick Greussay. Le manuel LISP 510. Institute D'Intelligence Artificielle, Informatique Musicale, Université de Paris 8 - Vincennes, February 1973, 58 pages. Online at ArtInfo-MusInfo
- Patrick Greussay. Manuel de Reference Provisoire: LISP T 1600. Inst. de L'Environnement, Université de Paris 8 - Vincennes, February 1975.
- Jérôme Chailloux. VLISP 10, Manuel de Référence. Rapport Technique 17-76, Université de Paris 8 - Vincennes, March 1976, 106 pages. Online at ArtInfo-MusInfo
- P. Greussay. VLISP Debug. Département Informatique, Université de Paris 8 - Vincennes, June 1977, 10 pages. Online at ArtInfo-MusInfo
- Harald Wertz. VLISP - AID. Département Informatique, Université de Paris 8 - Vincennes, July 1977, 8 pages. Online at ArtInfo-MusInfo
- Jérôme Chailloux. VLISP 10.3, Manuel de Référence. [RT-16-78?] Université de Paris 8 - Vincennes, August 1978, 224 pages. Online at ArtInfo-MusInfo
- Patrick Greussay. Le Système VLISP-16. Université de Paris 8 - Vincennes et LITP, December 1978, 130 pages. Online at ArtInfo-MusInfo
Reference Manual of the LISP 510 system, running on the CAE 510 computer manufactured by the "Compagnie Européenne d’Automatisme Électronique".
The VLISP 10 Reference Manual, a version of the VLISP system designed at the University Paris-8 Vincennes, implemented on the PDP-10 Computer, manufactured by Digital Equipment Corporation.
Illustrated with the Suite I for Cello Solo by J. S. Bach and the famous Go game from the Yasunari Kawabata's Book: "The Master of Go".
The VLISP 10.3 Reference Manual, a version of the VLISP system designed at the University Paris-8 Vincennes, implemented on the PDP-10 Computer, manufactured by Digital Equipment Corporation.
Illustrations by Mrs. Katarzyna Zelaska.
- Patrick Greussay. VLISP-11 : Manuel de Référence. Département Informatique, Université de Paris 8 - Vincennes, 1979.
- Jérôme Chailloux. An Optimised VLISP Compiler. May 1979, 11 pages [French]. Online at ArtInfo-MusInfo
- Jérôme Chailloux. VLISP 8.2, Manuel de Référence. [RT 11-79?] Université de Paris 8 - Vincennes, Révision 1, March 1980. Online at ArtInfo-MusInfo
VLISP 16 Reference Manual. This version of VLISP is implemented on the Solar 16 computer, produced by the French Company "Télémécanique Électrique" followed by the "Société Européenne de Miniinformatique et Systèmes" (SEMS).
Abstract: We describe in this paper a highly-optimized LISP compiler. The VLISP dialect is used as the source language and as the compiler language. This compiler can be used on any existing VLISP interpreters (from the PDP-10 to the Intel 8080). It generates instructions for the virtual machine VM#2 for portability and simplicity. Compiled functions are 6 times faster and memory usage is reduced (around 4 times).
- Anonymous. The Vincennes LISP Machine. UER Informatique, Université de Paris 8 - Vincennes, June 1981, 4 pages [French]. Online at ArtInfo-MusInfo
- Patrick Greussay. Le Système VLISP-UNIX. Département Informatique, Université de Paris 8 - Vincennes, February 1982.
The VLISP 8.2 Reference Manual, a version of the VLISP system designed at the University Paris-8 Vincennes and implemented on 8080 / Z80 micro-computers family.
Papers
- P. Greussay. An Iterative LISP Solution to the Samefringe Problem. ACM SIGART Newsletter, Number 59, August 1976, page 14. ACM DL
- Patrick Greussay. Iterative Interpretation of Tail-Recursive LISP Procedures.
- TR-20-76, Département Informatique, Université Paris 8 - Vincennes, September 1976.
- Appears in LISP Bulletin #2, July 1978, pages 35-46. PDF at ArtInfo-MusInfo
- Patrick Greussay. VLISP: Structure et Extensions d'un Système LISP pour Mini-Ordinateurs. RT 16-76, Département Informatique, Université Paris 8 - Vincennes, January 1976.
- Patrick Gruessay. Contribution à la définition interprétive et à l'implémentation des lambda-langages. Thèse d'Etat, Université de Paris VII, November 1977, 296 pages. Online at ArtInfo-MusInfo
- Jérôme Chailloux. A VLISP interpreter on the virtual VCMC1 machine. LISP Bulletin #2, July 1978, pages 23-30. PDF at ArtInfo-MusInfo
- Patrick Greussay. Aides à la Programmation en LISP : outils d'observation et de compréhension. Bulletin du Groupe Programmation et Langages, (9) AFCET, Division Théorique et Technique de l'Informatique, October 1979, pages 13-25.
- Jérôme Chailloux. VLISP 8, Un Système LISP pour micro-processeur a mots de 8 bits. [RT 11-79?] Université de Paris 8 - Vincennes, July 1978, 31 pages. Online at ArtInfo-MusInfo
- Jérôme Chailloux. VLISP 8, the design of a LISP system on 8 bit micro-computers. 1979, 14 pages. Online at ArtInfo-MusInfo
- Jérôme Chailloux. Le modèle VLISP: Description, évaluation et interprétation. Thèse de 3ème cycle, Université Paris VI, April 21, 1980, 362 pages. Online at ArtInfo-MusInfo
- Jérôme Chailloux; translated from French by Paul Y. Gloess. The VLISP Model: Description, Implementation and Evaluation. Auguest 28, 1980, 40 pages. Online at ArtInfo-MusInfo
This is a translation of Chapter 3 (the VCMC2 machine) of Chailloux's thesis (see above).
"Some parts of the text (programs, ...) have been omitted as they contain no French: partial inclusion signals their existence."
- P. Gruessay, J. Chailloux, H. Wertz, and D. Goossens. Automatic Improvement, Comprehension, Acceleration of LISP programs. Rapport ATP 4273. Intermediate report of the Artificial Intelligence Group, Département Informatique, Université Paris 8 - Vincennes, October 1980, 124 pages. Online at ArtInfo-MusInfo
Abstract: this paper describes the implementation of a VLISP interpreter and the associated compiler on a 8bit micro-processor, the VCMC2 virtual machine, the inherent limitations of such systems and the current status of VLISP 8 at the Université de Paris VIII - Vincennes.
Abstract: We describe in this paper, the design of a LISP system on 8 bit micro-computers and its incarnation: the VLISP 8 interpreter, implemented on INTEL 8080 based systems.
According to the space and time limitations on such computers, several representations and manipulations of (atypical) LISP objects are discussed.
VLISP 8, which is compatible with other VLISP systems, has a new style of function invocation (using F-TYP and F-VAL attributes), a management of small integers numbers which don't need any extra storage and an evaluator which does not create any ConsCells.
Applications
- Harald Wertz. A System to Understand Incorrect Programs. LISP Bulletin #2, July 1978, pages 31-38. PDF at ArtInfo-MusInfo
- Harald Wertz. A system to improve incorrect programs. In Proceedings of the 4th international Conference on Software Engineering (Munich, Germany, September 17 - 19, 1979). International Conference on Software Engineering. IEEE Press, Piscataway, NJ, 286-293. ACM DL
- Describes PHENARETE (see above).
- P. Cointe. A VLISP Implementation of SMALLTALK-76. Integrated Interactive Computing Systems, North-Holland, 1983, pages 89-102.
Le_Lisp
"The experience with Vlisp taught Chailloux that performance and portability can go together, and extending some of the Vlisp techniques, his group was able to achieve their goals. By 1984, their dialect ran on about ten different machines and demonstrated performance very much better than Franz Lisp, the most comparable alternative. On Vax 780's Le_Lisp performed about as well as Symbolics 3600's." [Steele and Gabriel 1993]
"A reduced but upward compatible version, LeLisp80, runs on Intel 8080/Zilog Z80 under CP/M [Chailloux 1983, Saint-James 1984]. This version is distributed in high-schools by the French Ministry of Education." [Chailloux et al. 1984]
Source code
- Jérôme Chailloux. Le_Lisp version 11, 1 March 1983. .tar
unpacked
"This version was running on 3 different architectures:
1 - the first Motorola Exormacs workstation based on the 68k CPU and running the VersaDOS Operating System
2 - VAX Unix BSD
3 - SM90, a French workstation based on the 68k and running Unix V7 (http://febcm.club.fr/english/bull_sps7.htm)."
[Jérôme Chailloux, personal communication to Paul McJones, January 2, 2006]
- Jérôme Chailloux. Le_Lisp version 12, July 1983. .tar unpacked
"This tar file contains the source of Le_Lisp version 12, aka LeLisp 80, as it was distributed, at the end of July 1983, in high-schools by the French Ministry of Education.
The system ran on a lot of different 8080 or Z80 based architectures, with a 16k byte footprint, specifically on:
1 - MDS80 (32K ou 64K)
2 - MOSTEK 80
3 - TRS80 model I level II
4 - SDK80
5 - SORCERER
6 - IMSAI 8080
7 - TRS model II
8 - Heathkit 89
9 - Machine Leblanc
10 - Micral 80 22 G
11 - SILZ (eleanor)
12 - LOGABAX
13 - Micral 90
- src: the complete source of the system at the end of July 1983, as described in the reference manual: http://www.inria.fr/rrrt/rt-0027.html
- llib: the LeLisp 80 standard library including the screen editor, PEPE.
- logo: a LeLisp 80 version of the programming language LOGO, developed by Isabelle Borne for the French Ministry of Education." [Jérôme Chailloux in README]
"We skipped the version 13 for obvious, non scientific, reasons and the version 14 was ported on more than 10 architectures."
[Jérôme Chailloux, personal communication to Paul McJones, January 2, 2006]
Documentation
- Jérôme Chailloux. Le_Lisp 80 Version 12, Le manuel de référence,
rapport technique no 27, I.N.R.I.A, Rocquencourt, France, Juillet 1983, 189
pages. Online at
www.inria.fr
"Abstract: This document is the reference manual of the system Le_Lisp 80 (by INRIA) version 12. This system, designed for all the INTEL 8080- or Zilog Z80-based computers running the CP/M operating system, contains the interpreter, the Emacs like editor and the development tools of a new dialect of the Lisp language, called Le_Lisp."
- Jérôme Chailloux. LELISP Version 15, manuel de référence, Rapport INRIA, Juin 1984.
- Jean-Marie Hullot. CEYX-Version 15. INRIA - Rocquencourt, Février
1985. Rapport technique.
- I : une initiation. RT-0044, 20 pages. Online at www.inria.fr
- II: programmer en CEYX. RT-0045, 84 pages. Online at www.inria.fr
- III : [with Gérard Berry] VPRINT le composeur CEYX. RT-0046, 13 pages. Online at www.inria.fr
- Jérôme Chailloux. La machine LLM3. Rapport technique RT-0055, INRIA- Rocquencourt, Juin 1985, 54 pages. Online at www.inria.fr
- Jérôme Chailloux, Matthieu Devin, Francis Dupont, Jean-Marie Hullot, Bernard Serpette, Jean Vuillemin. Le_Lisp Version 15.2, le manuel de référence, I.N.R.I.A, Rocquencourt, France, November 1986.
- Jérôme Chailloux et al. Le_Lisp Version 15.25, ILOG documentation, December 1993. PDF
Papers
- Jean-Marie Hullot. CEYX, a multiformalism programming environment. Rapports de Recherche RR-0210, INRIA Rocquencourt, Mai 1983, 13 pages. Online at www.inria.fr
- Jérôme Chailloux, Matthieu Devin, and Jean-Marie Hullot. LELISP, A Portable and
Efficient Lisp System. Proceedings of 1984 ACM Symposium on Lisp and
Functional Programming, Austin, Texas, pages 113-122.
ACM DL
- Also published as Rapport de recherche RR-0319, INRIA, 19 pages. Online at www.inria.fr
- Emmanuel Saint-James. Recursion is more efficient than iteration. Proceedings of the 1984 ACM Symposium on LISP and Functional Programming, Austin, Texas, pages 228-234. ACM DL
- Matthieu Devin M. Le portage du système LELISP, Mode d' Emploi. Rapports Techniques No. 50, INRIA Rocquencourt, March 1985, 57 pages. Online at www.inria.fr
- Matthiue Devin, Eric Madelaine and Annie Ressouche. Application de CEYX à la construction de programmes sous forme de machines virtuelles. Rapports de Recherche RR-0408, INRIA - Rocquencourt, Mai 1985, 23 pages. Online at www.inria.fr
- Matthieu Devin. La Microprogrammation du Système LeLISP - Une Premiere Approche, Rapports de Recherche No. 441, INRIA Sophia Antipolis, September 1985. Online at www.inria.fr
- Lee C. Rice. LeLisp: A LISP Environment for VAX VMS. DECUS Chapter SIG Newsletters, Volume I, Number 1, September 1985, VAX 23-26.
- Lee C. Rice. Le_Lisp: An Efficient Programming Environment for VAX Computers. The DEC Professional, Volume 5, Number 3, March 1986, pages 14-25.
- Jean Vuillemin. Exact Real Computer Arithmetic with Continued Fractions. Rapport de recherche RR-0760, I.N.R.I.A, Rocquencourt, France, Novembre 1987, 189 pages. Online at www.inria.fr
Applications
- Jérôme Chailloux, Jean-Marie Hullot, Jean-Jacques Levy, and J. Vuillemin. Le systeme LUCIFER d'aide a la conception de circuits integres. Rapport de recherche RR-0196, INRIA - Rocquencourt, Mars 1983, 19 pages. Online at www.inria.fr
- Pierre Cointe and Xavier Rodet. Formes: An object and time oriented system for music composition and synthesis. Proceedings of the 1984 ACM Symposium on LISP and functional programming, Austin, Texas, pages 85-95. ACM DL
- Jacques Duthen and Yves Potard. Le_Loup, an Object-Oriented Extension of Le_Lisp for an Integrated Computer Music Environment. Proceedings of the International Computer Music Conference 1987, University of Illinois, Champaign/Urbana, Illinois.
Franz Lisp
"Franz Lisp was created as a tool to further research in symbolic and algebraic manipulation, artificial intelligence, and programming languages at the University of California at Berkeley. Its roots are in a PDP-11 Lisp system which originally came from Harvard. As it grew it adopted features of Maclisp and Lisp Machine Lisp. Substantial compatibility with other Lisp dialects (Interlisp, UCILisp, CMULisp) is achieved by means of support packages and compiler switches. The heart of Franz Lisp is written almost entirely in the programming language C. Of course, it has been greatly extended by additions written in Lisp. A small part is written in the assembly language for the current host machines, VAXen and a couple of flavors of 68000. Because Franz Lisp is written in C, it is relatively portable and easy to comprehend." [John K. Foderaro, The Franz Lisp Manual, June 1983]
"A chorus of students under the direction of Richard Fateman have contributed to building FRANZ LISP from a mere melody into a full symphony . The major contributors to the initial system were Mike Curry, John Breedlove and Jeff Levinsky. Bill Rowan added the garbage collector and array package. Tom London worked on an early compiler and helped in overall system design. Keith Sklower has contributed much to FRANZ LISP, adding the bignum package and rewriting most of the code to increase its efficiency and clarity. Kipp Hickman and Charles Koester added hunks. Mitch Marcus added *rset, evalhook and evalframe. Don Cohen and others at Carnegie-Mellon made some improvements to evalframe and provided various features modelled after UCI/CMU PDP-10 Lisp and Interlisp environments (editor, debugger, top-level). John Foderaro wrote the compiler, added a few functions, and wrote much of this manual. Of course, other authors have contributed specific chapters as indicated. Kevin Layer modified the compiler to produce code for the Motorola 68000, and helped make FRANZ LISP pass 'Lint'." [John K. Foderaro, The Franz Lisp Manual, June 1983]
"... a MacLisp-like Lisp that eventually ran on virtually all Unix-based computers, thanks to the fact that Franz Lisp is written almost entirely in C. Later Franz, Inc., was formed to further Franz Lisp ..." [Steele and Gabriel 1993]
Source code
- Franz Lisp Opus 38.92 for VAX. Online at www.cs.berkeley.edu/~fateman
- Franz Lisp Opus 38.93b "The last public domain release available from the ucbvax ftp site before its demise." Online at CMU AI Repository
Documentation
- F. Howard. PDP-11 LISP. HRSTS Science Center, Harvard University, March 3, 1975. [Cited by Stoyan]
- John K. Foderaro, Keith L. Sklower, and Kevin Layer. The Franz Lisp Manual. University of California, Berkeley, 1980. Revised 1981, June 1983.
UtiLisp
"UtiLisp, which is not well known outside Japan, is a Lisp dialect of classical MacLisp: eval top loop, shallow binding, dynamic scope rule interpreter, with macro and readmacro facilities.
There are four versions of UtiLisp:
- UtiLisp on main frame machines like Hitac M series, Facom M/S series, IBM 3000 series
- UtiLisp68 on MC68000 (24 bit address) for Sun 1, Macintosh etc.
- UtiLisp32 on MC68010, 68020 (32 bit address) for Sun 2, 3 and on Vax etc.
- UtiLisp/C on SPARC for Sun 4 and Sparc Station." [Wada 1990]
Source code
- UtiLisp/C: versions retrieved from http://www.tanaka.ecc.u-tokyo.ac.jp/UtiLisp/ on June 19, 2005.
Documentation
- T. Chikayama. UtiLisp Manual. Technical Reports METR 81-6, Department of Mathematical Engineering and Instrumentation Physics, Faculty of Engineering, University of Tokyo, September 1981.
Papers
- Eiiti Wada. History of UtiLisp hacking. Journal of Information Processing, Volume 13, Issue 3, 1990, pages 276-283.
- Tetsuro Tanaka. Implementation of UtiLisp/C with SPARC Processor. Transactions IPSJ, Volume 32, Number 5, pages 684-690, May 1991, (Japanese) PDF
- Eiiti Wada and Tetsuro Tanaka. Implementation of UtiLisp/C on AP1000. Proc. of the Second Parallel Computing Workshop, Kawasaki, P2-C-1 -- P2-C-8, 1993. PDF
Common Lisp
Specification
- Guy L. Steele, Jr. Common LISP: the Language, Digital Press, 1984, 465 pages.
- Daniel G. Bobrow, Linda G. DeMichiel, Richard P. Gabriel, Sonya E. Keene, Gregor Kiczales, and David A. Moon. Common Lisp Object System Specification. Lisp and Symbolic Computation, Volume 1, Number 3-4, February, 1989.
- Part 1. Programmer Interface Concepts. Pages 245-298. DOI Online at dreamsongs.com
- Part 2. Functions in the Programmer Interface. Pages 299-394. DOI Online at dreamsongs.com
- Guy L. Steele, Jr. Common Lisp: the Language, Second Edition, Digital Press, 1990, 1029 pages. Online at www.cs.cmu.edu
- Kent M. Pitman et al. Information Technology - Programming Language -
Common Lisp (formerly ANSI X3.226-1994 (R1999)).
- For sale: Online at www.ansi.org
- First draft proposed standard. Version 12.24, document X3/92-1710-X S, August 21, 1992. Online at ftp.parc.xerox.com
- Second draft proposed standard. Version 14.10, document X3J13/93-102, January 26, 1994. Online at ftp.parc.xerox.com
- Third (final) draft proposed standard. Version 15.17, document X3J3/94-101, May 11, 1994. Online at ftp.parc.xerox.com .tar.gz at naggum.no
- Kent Pitman. Common Lisp HyperSpec, version 7.0. LispWorks Ltd., 2005. Online at www.lispworks.com
Papers
- Larry Masinter and Bill vanMelle. Report on Common Lisp to the Interlisp
Community. Email message, circa December 1981, 8 pages. PDF
"In a fit of optimism that usually does not characterize him, Gabriel approached the Xerox Interlisp group, and received a warmer welcome than he did in Berkeley, but he left with only an indication that someone, probably Bill VanMelle, would attend the meetings, mostly as an observer." [Steele and Gabriel 1993]
- Arun Welch. CL History. Posting to comp.lang.lisp, October 20, 1994,
Message-ID <WELCH.94Oct20153410@thor.oar.net>.
Online at groups-beta.google.com
Online at CMU AI Repository
A collection of email from key Common Lisp contributors spanning 1981 to 1984.
- Guy L. Steele, Jr. An overview of COMMON LISP. Proceedings of the 1982 ACM symposium on LISP and functional programming, Pittsburgh, Pennsylvania, pages 98-107. ACM DL
- Richard P. Gabriel and Larry M. Masinter. Performance of Lisp systems. Proceedings of the 1982 ACM symposium on LISP and functional programming, Pittsburgh, Pennsylvania, pages 123-142. ACM DL
- Rodney A. Brooks and Richard P. Gabriel. A critique of Common LISP. Proceedings of the 1984 ACM Symposium on LISP and functional programming, Austin, Texas, pages 1-8. ACM DL
- Richard P. Gabriel. Performance and Evaluation of Lisp Systems. The MIT Press, Cambridge, Massachusetts, 1985. PDF at www.dreamsongs.com The MIT Press
- Jon L White. Reconfigurable, retargetable bignums: a case study in efficient, portable Lisp system building. Proceedings of the 1986 ACM conference on LISP and functional programming, Cambridge, Massachusetts, pages 174-191. ACM DL
- S.E. Fahlman. Common Lisp. Annual Review of Computer Science, Volume 2, June 1987, pages 1-19. Online at annualreviews.org
- Linda G. DeMichiel andRichard P. Gabriel. The Common Lisp Object System: An Overview. Proceedings ECOOP 1987, June 1987, Lecture Notes in Computer Science, Volume 276, Springer, pages 151-170. Online at springerlink.com Online at www.ecoop.org Online at dreamsongs.org
- C. Queinnec and J. Chailloux, editors. Proceedings of the First International Workshop on Lisp Evolution and Standardization. February 22-23, 1988, Paris, France. Published by IOS, Amsterdam, 1988.
- Takayasu Ito and Taiichi Yuasa. Some Non-standard Issues on Lisp Standardization. Proceedings of the First International Workshop on LISP Evolution and Standardization, February 22-23, 1988, Paris France, Published by IOS, Amsterdam, 1988, pages 11-20. PDF
- Larry Masinter. Common LISP Cleanup. Proceedings of the First International Workshop on LISP Evolution and Standardization, February 22-23, 1988, Paris France, Published by IOS, Amsterdam, 1988, pages 21-24. PDF of preprint
- Kent M. Pitman. Interactions in Lisp. Proceedings of the First International Workshop on Lisp Evolution and Standardization, February 22-23, 1988, pages 45-49. HTML at www.nhplace.com
- Linda G. DeMichiel. Overview: The Common Lisp Object System. Lisp and Symbolic Computation, Volume 1, Number 3-4, February, 1989, pages 227-244. DOI Online at dreamsongs.com
- Richard P. Gabriel, Jon L. White, and Daniel G. Bobrow. CLOS: Integrating Object-Oriented and Functional Programming. Commun. ACM, Volume 34, Number 9, 1991, pages 28-38. ACM DL Online at dreamsongs.com
- Henry G. Baker. Critique of DIN Kernel Lisp Definition Version. Lisp
& Symbolic Computation, Volume 4, Number 4, March 1992, pages 371-398. HTML at
www.pipeline.com
"The last ten years have seen both a boom and and bust for the Lisp language. From its inception in 1958 until its commercialization in 1980, Lisp was content to live a life of academic obscurity, servicing the needs of Artificial Intelligence, theorem proving and symbolic algebra researchers. In this role, Lisp could explore many new ideas and quickly absorb new ideas from the programming language 'mainstream'. However, when AI became a business, Lisp was drawn to the money like a moth to the flame. Lisp quickly sought to become 'industrial strength', and ANSI Common Lisp was the result. Unfortunately, 'industrial' quickly became 'rust belt', as the newly standardized Common Lisp could not quickly grow and adapt to the new, more "open" environment.
In Lisp's quest for industrial respect, it abandoned its traditional customers. Symbolic algebra developers (e.g., Maple, Mathematica) forsook Lisp for the more portable and efficient C. Logicians gave up Lisp for Prolog and ML. Vision researchers, seeking the highest performance from parallel computers, dropped Lisp in favor of C, Fortran (!) and various fringe parallel languages. AI companies were forced to move their expert systems into C, C++, Ada and Cobol (!) because of the large size, poor performance and poor integration of Common Lisp systems. Academicians teaching undergraduates chose Scheme and ML for their small size, portability and clean semantics."
- Working files for the X3J13 Ansi Common Lisp committee, May 13, 1994.
Online at ftp.parc.xerox.com
From README:
- dpANS1: The working draft that became the first draft proposed American National Standard. This document is no longer current, and is kept around for historical purposes only.
- dpANS2: The second draft proposed American National Standard. See the file Reviewer-Notes.text for further information.
- dpANS3: An X3J13 internal document. A letter ballot is presently being taken to see if this will become the third draft proposed American National Standard. Until the results of the letter ballot are tallied, this document has no offical standard as a dpANS. This document contains only editorial changes since dpANS2. See the files Reviewer-Notes.text, Change-Summary.text, and Change-Log.text for details.
- cleanup: status, reports, and proposals from some of the older X3J13 meetings. (For historical purposes only. Most information is several years out of date. This is not an authoritative source of information.)
- Wanda J. Orlikowski and JoAnne Yates. Genre Repertoire: Norms and Forms
for Work and Interaction. MIT Sloan School Working Paper #3671-94, Center
for Coordination Science Technical Report #166, March 1994.
HTML at ccs.mit.edu
"Most of the work [designing Common Lisp] was carried out by E-mail discussion. These dicussions were captured in file archives. One research at the Sloan School at MIT has used these archives to study computer-mail-based decision-making and interaction. [Steele and Gabriel 1993]
- John C. Mallery, Howard E. Shrobe, Robert Laddaga, Thomas F. Knight, Kalman Reti, Paul Robertson, Andrew J. Blumberg, Susan Felshin, and Patrick H. Winston. Modernizing Common Lisp: Recommended Extensions. Email to x3j13@ai.sri.com. Artificial Intelligence Laboratory, Massachusetts Institute of Technology, July 7, 1999. HTML at lists.tunes.org
- Masayuki Ida. The History of Lisp Standardization during 1984 – 1990.
Proceedings of the 2002 International Lisp Conference, San Francisco,
California, October 2002.
PDF
"CLtL1 was the output of a hastily united group of MacLisp successors, who felt InterLisp group was stronger than they were. They did not dream of international matters or even of commercial interests. Most of them thought it is just a US academic research matter: most of them did not know how to make international standards, or even American national standards."
Implementations - open source
BBN Butterfly Common Lisp
CMU Common Lisp (CMUCL)
"CMUCL was developed at the Computer Science Department of Carnegie Mellon University. The work was a small autonomous part within the Mach microkernel-based operating system project, and started more as a tool development effort than a research project. The project started out as Spice Lisp, which provided a modern Lisp implementation for use in the CMU community. CMUCL has been under continual development since the early 1980's (concurrent with the Common Lisp standardization effort). Most of the CMU Common Lisp implementors went on to work on the Gwydion environment for Dylan. The CMU team was lead by Scott E. Fahlman, the Python compiler was written by Robert MacLachlan." [CMUCL credits]
- http://www.cons.org/cmucl/
- Older versions:
- Versions 15e, 16f, 17e, 17f. Online at CMU Artificial Intelligence Repository
- Versions 15d, 16c, 16e. Online at ftp.funet.fi
- Robert A. MacLachlan. CMU Common Lisp User's Manual.
- CMD-CS-87-156.
- CMU-CS-91-108, 1991.
- CMU-CS-92-161, July 1992, 145 pages. PDF
GNU CLISP
"CLISP is a Common Lisp implementation by Bruno Haible, then of Karlsruhe University, and Michael Stoll, then of Munich University, both in Germany. It supports the Lisp described in the ANSI Common Lisp standard plus many extensions.
CMUCL's CLOS implementation is derived from the PCL reference implementation written at Xerox PARC. Its implementation of the LOOP macro was derived from code from Symbolics, which was derived from code written at MIT. The CLX code is copyrighted by Texas Instruments Incorporated. " [CLISP Common Lisp Summary]
Kyoto Common Lisp (KCL)
"A new player from Japan – Kyoto Common Lisp (KCL) – provided a bit of a spoiler: KCL has a compiler that compiles to C, which is compiled by the C compiler. This Lisp was licensed essentially for free, and the Common Lisp companies suddenly had a suprising competitor." [Steele and Gabriel 1993]
"Kyoto Common Lisp (KCL) is a highly portable and implementation of Common Lisp originally developed at Kyoto University in Japan. KCL conforms to CLtL1."
- Sources: free but requires a license. Online at CMU Artificial Intelligence Repository
- Taiichi Yuasa and Masami Hagiya. Kyoto Common Lisp Report. Research Institute for Mathematics Sciences, Kyoto University, August 1985, 87 pages. PDF PostScript
-
T. Yuasa. Design and Implementation of Kyoto Common Lisp. Journal of Information Processing, Volume 13, Number 3, 1990, pages 284-295. PDF PostScript IPSJ Digital Library
Austin Kyoto Common Lisp (AKCL)
"Austin Kyoto Common Lisp (AKCL) is a collection of ports, bug fixes and improvements to KCL written by Bill Schelter. {A}KCL generates C code which it compiles with the local C compiler."
"To build AKCL, one must also have in place the sources for KCL. At the time one builds AKCL, one automatically merges AKCL changes with the KCL sources, which are left unmodified, in accordance with the KCL license."
GNU Common Lisp (GCL)
"GCL is the product of many hands over many years. The original effort was known as the Kyoto Common Lisp system, written by Taiichi Yuasa and Masami Hagiya in 1984. In 1987 new work was begun by William Schelter, and that version of the system was called AKCL (Austin Kyoto Common Lisp). In 1994 AKCL was released as GCL (GNU Common Lisp) under the GNU public library license. The primary purpose of GCL during that phase of its existence was to support the Maxima computer algebra system, also maintained by Dr. Schelter. It existed largely as a subproject of Maxima.
After the passing of Dr. Schelter in 2001, it was decided that GCL should be actively maintained and improved. GCL is currently maintained by a team of 12 developers across the world coordinated via the gcl-devel mailing list." [GCL History]
- http://savannah.gnu.org/projects/gcl
- http://www.gnu.org/software/gcl/
- Older versions: Online at CMU Artificial Intelligence Laboratory
Rutgers Common Lisp for TOPS-20 on DECSYSTEM-20
Charles L. Hedrick and J. Storrs (Josh) Hall developed a Common Lisp for the DECSYSTEM-20 running TOPS-20 at Rutgers University during 1983-1985. This system was based on Carnegie-Mellon's Spice Lisp, but used an assembly language kernel whose "interior design is sort of a cross between the Spice machine and Elisp, the Rutgers extended-addressing version of UCI Lisp" [Hedrick 1985]. The Spice system code, which is the portion of the runtime written in Lisp, was used with only minor modifications to deal with representation dependencies. The Spice compiler was modified to generate code for the DECSYSTEM-20.
The version of the kernel and Lisp code exhibited here contains bug fixes and improvements by Björn Victor, Per-Erik Martin and others at Uppsala University, Sweden, and also by Peter Samson at Systems Concepts, San Francisco, California.
The Flavors code was adapted for Common Lisp from Spice Lisp Flavors by Torbjörn Åhs and Björn Victor at Uppsala University. Spice Lisp Flavors was adapted by Steven Handerson from Symbolics Flavors. Symbolics Flavors was designed by Howard Cannon and David Moon. [Cannon 1979] [Weinreb and Moon 1980] [Moon and Weinreb 1985] [Moon 1986]
Source code
- Charles L. Hedrick and J. Storrs (Josh) Hall. Common Lisp for TOPS-20 on DECSYSTEMS-20. Rutgers
University, 1983-1985. Modifications and additions by Björn Victor and others at
Uppsala University, Sweden, 1985-1997. Distributed by permission of Charles
L. Hedrick, July 28, 2005.
- TOPS-20 DUMPER tape supplied by Björn Victor, July 22, 2005. .tps.gz
- Unix ASCII version, converted using
Tim Shoppa's
split_tap and his version of read20
.zip
clisp.tps.gz was processed by uncompressing it with gzip, then running
split_tap < clisp.tps, which produced three output files, and finally runningread20 -C -f out02.dat -xto process the actual TOPS-20 saveset.
Documentation
- Charles L. Hedrick. Tops-20 Common Lisp Red Pages. Rutgers University, 1985, 26 pages. PDF
- Daniel Weinreb and David Moon. Flavors: Message Passing in the Lisp Machine. A.I. Memo No. 602, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, November 1980. PDF at MIT
- David Moon and Daniel Weinreb. Introduction to Flavors. 1985.
PDF
"This document is adapted from text written primarily by David Moon and Daniel Weinreb which appeared in the Lisp Machine Manual, fourth edition, chapter 20, copyrighted by the Massachusetts Institute of Technology."
- Steven Handerson and Jim Muller. Spice Lisp Flavors. Spice Lisp Project, 1985. PDF
- Skef Wholey, Scott E. Fahlman and Joseph Ginder. Revised Internal Design
of Spice Lisp. DRAFT, Spice Document S026 [Revised], undated.
PDF
Stoyan includes a document with these authors and title as Spice Document S226, 1983.
Papers
- Howard Cannon. Flavors - A Non-Hierarchical Approach to Object-Oriented Programming. Unpublished draft, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, 1979? 1981?
- David Moon. Object-oriented programming with flavors. Conference proceedings on Object-oriented programming systems, languages and applications, Portland, Oregon, 1986, pages 1-8. ACM DL
Steel Bank Common Lisp (SBCL)
Forked from CMUCL in 1999.
Implementations - commercial
- Allegro CL. Franz Inc. http://www.franz.com/products/
- GCLISP. Gold Hill. http://www.goldhill-inc.com/
- Liquid Common Lisp. LispWorks.
http://www.lispworks.com/products/lcl.html
Formerly known as Lucid Common Lisp.
- http://linuxfinances.info/info/commonlisp.html
-
See also: Commercial Vendors section of http://lisp.tech.coop/implementation
Documentation
- Anonymous. Lisp Reference. TI Part Number 2243201-0001, Texas Instruments Explorer. PDF at bitsavers.org
Applications
Computer algebra
- Axiom.
Online
at page.axiom-developer.org
"Axiom has been in development since 1971. At that time, it was called Scratchpad. Scratchpad was a large, general purpose computer algebra system that was originally developed by IBM under the direction of Richard Jenks. The project started in 1971 and evolved slowly. Barry Trager was key to the technical direction of the project. Scratchpad developed over a 20 year stretch and was basically considered as a research platform for developing new ideas in computational mathematics. In the 1990s, as IBM's fortunes slid, the Scratchpad project was renamed to Axiom, sold to the Numerical Algorithms Group (NAG) in England and became a commercial system. As part of the Scratchpad project at IBM in Yorktown Tim Daly worked on all aspects of the system and eventually helped transfer the product to NAG. For a variety of reasons it never became a financial success and NAG withdrew it from the market in October, 2001.
NAG agreed to release Axiom as free software, under this license. The basic motivation was that Axiom represents something different from other programs in a lot of ways. Primarily because of its foundation in mathematics the Axiom system will potentially be useful 30 years from now. In its current state it represents about 30 years and 300 man-years of research work. To strive to keep such a large collection of knowledge alive seems a worthwhile goal." [History, from AboutAxiom]
- Maxima. Online at
maxima.soureforge.net
"Maxima is a descendant of DOE Macsyma, which had its origins in the late 1960s at MIT. It is the only system based on that effort still publicly available and with an active user community, thanks to its open source nature. Macsyma was the first of a new breed of computer algebra systems, leading the way for programs such as Maple and Mathematica. This particular variant of Macsyma was maintained by William Schelter from 1982 until he passed away in 2001. In 1998 he obtained permission to release the source code under GPL. It was his efforts and skill which have made the survival of Maxima possible, and we are very grateful to him for volunteering his time and skill to keep the original Macsyma code alive and well. Since his passing a group of users and developers has formed to keep Maxima alive and kicking. Maxima itself is reasonably feature complete at this stage, with abilities such as symbolic integration, 3D plotting, and an ODE solver, but there is a lot of work yet to be done in terms of bug fixing, cleanup, and documentation. This is not to say there will be no new features, but there is much work to be done before that stage will be reached, and for now new features are not likely to be our focus." [About Maxima]
Theorem provers
The Boyer-Moore theorem prover pioneered the approach (also used by ACL2) of using "home-grown dialect of Pure Lisp" as a logic language, and also uses a regular Lisp as an implementation language.
- R. S. Boyer and J Moore. Nqthm (the Boyer-Moore theorem prover).
- J Stother Moore. The Boyer-Moore Theorem Prover (NQTHM). Web page. Online at www.cs.utexas.edu
- Source code, documentation, and examples. Online at www.cs.utexas.edu
- Matt Kaufmann and J Strother Moore. ACL2 (Applicative Common Lisp - A
Computational Logic).
- Project web page with source code, documentation, and examples. Online at www.cs.utexas.edu
EuLisp
"The EULISP group first met in September 1985 at IRCAM in Paris to discuss the idea of a new dialect of Lisp, which should be less constrained by the past than Common Lisp and less minimalist than Scheme. ... The following people (in alphabetical order) have contributed in various ways to the evolution of the language: Giuseppe Attardi, Javiere Béjar, Russell Bradford, Harry Bretthauer, Peter Broadbery, Christopher Burdorf, Jérôme Chailloux, Thomas Christaller, Jeff Dalton, Klaus Däßler, Harley Davis, David DeRoure, John Fitch, Richard Gabriel, Brigitte Glas, Nicolas Graube, Dieter Kolb, Jürgen Kopp, Antonio Moreno, Eugen Neidl, Pierre Parquier, Keith Playford, Willem van der Poel, Christian Queinnec, Enric Sesa, Herbert Stoyan, and Richard Tobin. ... – Julian Padget and Greg Nuyens, editors." [From Foreword, Programming Language EuLisp, version 0.99]
Source code
- EuLisp archives. Definition, source code, mailing list archives, etc. Online at ftp.bath.ac.uk
- Julian Padget, Russell Bradford, and Duncan Batey. FEEL (Free and Eventually EuLisp).
- Version 0.75 and Comp 0.02. Online at ftp.gmd.de
- Version 0.75, 0.84, 0.85, 0.85b, 0.89 and 0.90; Comp 0.02, 0.85, and 0.89. Online at CMU AI Repository
- Version 0.92e. Online at ftp.bath.ac.uk
- Euscheme. A simple EuLisp Level 0 interpreter.
- Sources. Versions 034, 035, 036; precompiled DOS versions 33 and 35; notes. Online at www.bath.ac.uk
- Sources. Version ??? patched for Windows XP. Online at people.bath.ac.uk
- Russell Bradford. Using Euscheme. HTML at www.bath.ac.uk
- Dr. E.Ulrich Kriegel. Apply/Eu2C. EuLisp->C compiler. Fraunhofer
Institute for Software Engineering and Systems Engineering
(FhG ISST), Kurstrasse 33, D-10117 Berlin, FRG.- Version 93.12, 94.02, and 94.07. Online at ftp.isst.fhg.de
- Versions 93.10, 93.12, 94.02, and 94.07. Online at CMU AI Repository
Documentation
- Julian Padget and Greg Nuyens, editors. The EuLisp Definition. Version 0.7.5, June 10, 1991. PDF
- Julian Padget and Greg Nuyens, editors. Programming Language EuLisp. Version 0.95, September 1992. PDF
- Julian Padget and Greg Nuyens, editors. Programming Language EuLisp. Version 0.99, August 1993. PDF
- Julian Padget, Russell Bradford, and Duncan Batey. FEEL: An Implementation of EuLisp. Version 0.92, Concurrent Processing Research Group, School of Mathematical Sciences, University of Bath, United Kingdom, April 19, 1994. PDF
- Julian Padget. EuLisp FAQ. HTML at www.bath.ac.uk
- Jeff Dalton. EuLisp. HTML at www.aiai.ed.ac.uk
Papers
- H. Stoyan, J. Chailloux, J. Fitch, J. T. Krumnack, E. Neidl, J. Padget, G. Attardi, T. Christaller, J. Dalton, M. Devin, B. Lang, R. Lopez de Mantaras, E. Papon, S. Pope, C. Quiennec, L. Steels. Towards a LISP standard. ECAI'86. 7th European Conference on Artificial Intelligence, Volume 2, pages 46-52.
- Julian Padget, Jérôme Chailloux, Thomas Christaller, Ramon DeMantaras, Jeff Dalton, Matthieu Devin, John Fitch, Timm Krumnack, Eugen Neidl, Eric Papon, Stephen Pope, Christian Queinnec, Luc Steels, and Herbert Stoyan. Desiderata for the standardization of LISP. Proceedings of 1986 ACM Symposium on Lisp and Functional Programming, ACM Press, New York, August 1986, pages 54-66. ACM DL
- Christian Queinnec and Pierre Cointe. An open-ended data representation model for EU_LISP. Proceedings of the 1988 ACM Conference on LISP and Functional Programming, Snowbird, Utah, pages 298-308. ACM DL
- Julian Padget, Russell Bradford, and John Fitch. Concurrent Object Oriented Processing in Lisp. Computer Journal, Volume 34, Number 4, pages 311-319, August 1991. PDF Online at Oxford Journals
- Julian Padget, Greg Nuyens, and Harry Bretthauer, editors. An Overview of EuLisp. Lisp and Symbolic Computation, Volume 6, Number 1-2, 1993, pages 9-98. PDF
- R. Bradford and D.C. DeRoure. EuLisp in Education. Lisp and Symbolic Computation, Volume 6, Number 1-2, pages 99-118. PDF
- Harry Bretthauer, Jürgen Kopp, Harley Davis, and Keith Playford. Balancing the EuLisp Metaobject Protocol. Lisp and Symbolic Computation, Volume 6, Issue 1-2, August 1993, pages 119-138. PDF
- Peter Broadbery and Christopher Burdorf. Applications of Telos. Lisp and Symbolic Computation, Volume 6, Issue 1-2, August 1993, pages 139-158. PDF
- Andreas Kind and Horst Friedrich. A practical approach to type inference for EuLisp. Lisp and Symbolic Computation, Volume 6, Issue 1-2, August 1993, pages 159-176. PDF
- Neil Berrington, Peter Broadbery, David DeRoure, and Julian Padget. EuLisp Threads: A Concurrency Toolbox. Lisp and Symbolic Computation, Volume 6, Issue 1-2, August 1993, pages 177-200. PDF
- Simon Merrall, Julian Padget. Plurals: A SIMD Extension to EuLisp. Lisp and Symbolic Computation, Volume 6, Issue 1-2, August 1993, pages 201-219. PDF
- See also: Denton Project Papers. HTML at www.cs.bath.ac.uk
- E. Ulrich Kriegel. A Conservative Garbage Collector for an EuLisp to ASM/C Compiler. OOPSLA'93 Workshop on Garbage Collection and Memory Management, Washington, DC, September 27, 1993. PDF
Connection Machine *Lisp (StarLisp)
"*Lisp (pronounced "star Lisp") is a data parallel extension of the Common Lisp programming language, designed for the Connection Machine system." [Getting Started in *Lisp]
Work on the system took place from 1985 to 1991. Project members included Cliff Lasser, Steve Omohondro, Jeff Mincy, J.P. Massar, and Mario Borgoinne. [See J.P. Massar 2005]
Source code of *Lisp Simulator
- J.P. Massar. Version F19. Online Online at CMU AI Repository Original announcement on comp.archives
- J.P. Massar. Version F20. Ported to ANSI Common Lisp, September 2001. Online Online at examples.franz.com Announcement on comp.lang.lisp
Documentation
- Cliff Lasser, Jeff Mincy, J.P. Massar. The Essential *LISP Manual, Thinking Machines Corporation, 1986.
- Anonymous. Getting Started in *Lisp, Version 6.1, Thinking Machines Corporation, Cambridge, Massachusetts, June 1991. Online
- Anonymous. *Lisp Dictionary Thinking Machines Corporation, Cambridge, Massachusetts.
- Anonymous. *Lisp Timesharing User's Guide. Online at CMU AI Repository
- Zdzislaw Meglicki. The CM5 *Lisp Course. Centre for Information Science Research, The Australian National University, 18th & 19th January 1994. PDF Online at CMU AI Repository Original announcement on comp.archives
Papers
- [J.P. Massar.] *Lisp. Wikipedia, June 26, 2005. Online at www.wikipedia.org
ISLISP
"ISLISP was designed on the bases of KL (proposed by Japan) and CLOS (proposed by US), reflecting experiences of COMMON LISP, EULISP, LE LISP, and SCHEME, and taking into account common practices in the Lisp community. ISLISP is a small Lisp, but it is designed with extensibility in mind, trying to keep compatibility with existing Lisp dialects, too.
ISLISP would be embeddable in COMMON LISP implementations without big efforts, but ISLISP will promote efficient implementations if it is implemented from scratch. ISO ISLISP, ANSI COMMON LISP and IEEE SCHEME would be co-existing and complementary in the Lisp community, since they have their own distinctive features in languages, systems, and applications." [FAQ, ISO/IEC JTC1/SC22/WG16 - ISLISP]
Documentation
- ISO/IEC 13816:1997(E), Information Technology -- Programming languages,
their environments and system software interfaces -- Programming language
ISLISP.
- For sale at www.iso.org
- Programming Language ISLISP. Public domain working drafts.
- Working Draft 21.0, July 29, 2004. PDF at ryujin.kuis.kyoto-u.ac.jp
- Draft Technical Corrigendum ISO/IEC 13816:1996(E). PDF at ryujin.kuis.kyoto-u.ac.jp
- Draft Corrected Reprint for ISO/IEC 13816:1997(E). PDF at ryujin.kuis.kyoto-u.ac.jp
- Working Draft 20.3, March 31, 1997. PDF at www.islisp.info PDF at ryujin.kuis.kyoto-u.ac.jp
- Working Draft 8.5, December 21, 1992, and Working Draft 11.4, July 31, 1994. Online at CMU AI Repository
- ISO/IEC JTC1/SCC/WG16 - ISLISP. Web site. Last updated June 15, 2004. Online at www.open-std.org
- Programming Language ISLISP. Web site. Online at www.islisp.info
Papers
- Takayasu Ito, Taiichi Yuasa, Yukiko Hashimoto, Kyoji Umemura, Atsuhi Nagasaka and Katsumi Kishida. ISLisp (a Proposal for ISO Lisp Standardization), its Background and Current Status. [In Japanese?] Information Processing Society of Japan SIGNOTES SYMbol manipulation, Number 78, 1994?.
- N. Izumi and T. Ito. Interpreter and Compiler of the ISO Standard Lisp ISLISP. [In Japanese?] Proceedings National Convention of Information Processing Society of Japan, Volume 1, pages 323 - 324, 1998.
- Takayasu Ito. TISL: An Experimental Interpreter and Compiler for ISLisp. October 28, 1998. HTML at www.open-std.org
- Nobuto Izumi and Takayasu Ito. A Package System for an ISLISP Processor
TISL. [In Japanese] Information Processing Society of Japan
Transactions on Programming, Volume 40, Number SIG10, December 1999.
PDF at IPSJ
- Also presented at Japan Lisp User Group Meeting, May 18-19, 2000. PDF at jp.franz.com
- Junichi Takahashi, Hiroshi Gomi, Hiroyuki Kagami, Masahiko Yamada, Yoshihiro Shintani, Atsuhi Nagasaka, Kyoji Umemura, Taiichi Yuasa. On the Portability of ISLisp System and the Multiple External System Interface Facilities. [In Japanese?] Information Processing Society of Japan Transactions on Programming, Volume 40, Number SIG07, 1999?.
- Nobuto Izumi and Takayasu Ito. Design and Implementation of a Native Interface for an ISLISP Processor TISL. [In Japanese?] Information Processing Society of Japan Transactions on Programming, Volume 42, Number SIG11, 2001?.
Implementations - commercial
- Nobuto Izumi and Takayasu Ito. TISL. Online at iastate.edu
- Christian Jullien. OpenLisp by Eligis. Online at www.eligis.com
See this comp.lang.lisp thread.
Emacs Lisp
The histories of the Emacs text editor and the Lisp programming language are intertwined: most versions of Emacs have used some dialect of Lisp as an extension language, and several versions (starting with Dan Weinreb's EINE for the Lisp Machine; also ZWEI by Dan Weinreb and Mike McMahon and Multics Emacs by Bernie Greenberg) have been implemented in Lisp.
Papers
- Bernard S. Greenberg. Multics Emacs (Prose and Cons): A commercial text-processing system in Lisp. Proceedings of the 1980 ACM conference on LISP and functional programming, Stanford University, California, pages 6-12. ACM DL
- Richard M. Stallman. EMACS: The Extensible, Customizable,
Self-Documenting Display Editor. Proceedings of the ACM SIGPLAN SIGOA
Symposium on Text Manipulation, Portland, Oregon, June 1981, pages
147-156. ACM DL
Extended version published as AI Memo 519A, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, March 26, 1981. PDF at MIT HTML at www.gnu.org
- Richard M. Stallman. My Lisp Experiences and the Development of GNU Emacs. Transcript of talk given at International Lisp Conference, San Francisco, October 28, 2002. HTML at www.gnu.org
- Bernard S. Greenberg. Multics Emacs: The History, Design and Implementation. Originally written 1979; revised April 8, 1996. http://www.multicians.org/mepap.html
- Jamie Zawinski. Emacs Timeline. Written March 8, 1999; updated February 12, 2004. online at www.jwz.org
Bibliographies
- Herbert Stoyan. LISP Bibliography.
Online
at Friedrich-Alexander-Universität Erlangen-Nürnberg
Extensive.
- Nelson H. F. Beebe. Bibliography on Common Lisp. Department of Mathematics, University of Utah, version 2.08, January 12, 2004. HTML at www.math.utah.edu
- ACM Conference on LISP and Functional Programming, 1980 - 1994. Online at DoCIS
- Lisp and Symbolic Computation, 1988 - 1998. Online at DoCIS
Papers about LISP and its history
Precursors of LISP
- A. Newell and J. C. Shaw. Programming the logic theory machine. Proceedings Western Joint Computer Conference, February 1957. ACM DL PDF at CMU
- J. McCarthy. Programs with common sense. Paper presented at the Symposium on the Mechanization of Thought Processes, National Physical Laboratory, Teddington, England, Nov. 24-27, 1958. (Published in Proceedings of the Symposium by H. M. Stationery Office). Online at Stanford
By LISP project members
- John McCarthy. LISP: a programming system for symbolic manipulations. Preprint of paper presented at the 14th national meeting of the Association for Computing Machinery, 1959, pages 1-4. ACM DL
- John McCarthy. Recursive functions of symbolic expressions and their computation by machine, Part I. Communications of the ACM, Volume 3, Issue 4 (April 1960), pages 184-195. ACM DL online at Stanford
- Berkeley and Bobrow, editors. The Programming Language Lisp : Its Operation and Applications. Information International, Inc., March 1964. PDF
- John McCarthy. History of Lisp. Proceedings of the first ACM SIGPLAN conference on history of programming languages, ACM DL HTML at Stanford ; appears in: R. Wexelblat, editor. History of Programming Languages. ACM Monograph Series, Academic Press, 1981.
- John McCarthy. LISP – notes on its past and future. Proceedings of the 1980 ACM conference on LISP and functional programming, Stanford University, California, pages v-viii. ACM DL online at Stanford
By others
- Herbert Stoyan. Lisp History. LISP Bulletin #3, December 1979, pages 44-55. ACM DL PDF at www.artinfo-musinfo.org
- Herbert Stoyan. Lisp History.
Online
at Friedrich-Alexander-Universität Erlangen-Nürnberg
- Early LISP history (1956-1959) A version was published in Proceedings of the 1984 ACM Symposium on LISP and functional programming, Austin, Texas, pages 299-310. ACM DL
- The Influence of the Designer on the Design - J. McCarthy and Lisp [Was a version of this included in Stoyan's book LISP-Anwendungsgebiete, Grundbegriffe, Geschichte. Akademie Verlag, Berlin 1980?]
- Lisp People
- Guy L. Steele, Jr. and Richard P. Gabriel. The evolution of Lisp. Proceedings of the second ACM SIGPLAN conference on History of programming languages, Cambridge, Massachusetts,
1993, pages 231-270.
- ACM DL PDF at Dreamsongs.com
- Uncut PDF at Dreamsongs.com Slides PDF at Dreamsongs.com
- Reenactment of 1993 lecture, at OOPSLA 2008. Video and synchronized slides at InfoQ.com
- Kent M. Pitman, editor. History. Section 1.1.2, ANSI Common Lisp. Online at www.franz.com
- Anonymous. Lisp programming language. Wikipedia. Online at wikipedia.org
Biographies, interviews and oral histories
- Thomas Haigh, interviewer. Oral History of Phyllis Fox. Recorded June 7 and 8, 2005 in Short Hills, New Jersey. Discussion of Lisp project starts on page 28. Transcript at siam.org
- Gardner Hendrie, interviewer. Oral History of Richard Greenblatt. Recorded January 12, 2005 in Boston, Massachusetts, total running time: 2:33:00. Lot X3131.2005, Computer History Museum. Transcript (PDF)
- Joel Moses. My Life, 1995, 339 pages. PDF at mit.edu
Lisp periodicals
- LISP Bulletin. Volume 1.
- Issue 1. Daniel G. Bobrow, editor. Published in ACM SIGPLAN Notices, Volume 4, Issue 9, September 1969, pages 17-57. PDF ACM DL
- Issue 2. Patrick Greussay & Joachim Laubsch, editors. July 1978, 52 pages. ACM DL Online at ArtInfo-MusInfo
- Issue 3. Patrick Greussay & Joachim Laubsch, editors. December 1979, 55 pages. ACM DL Online at ArtInfo-MusInfo
- Lisp Pointers. Edited by Mary S. Van Deusen (Volumes I - V) and Jon L. White (Volumes VI - VIII). ACM DL
- Volumes I and II (April-May 1987 - January-June 1989). "Community-supported" with free subscriptions and sponsorship by IBM, INRIA, Xerox PARC, MCC, Texas Instruments, Digital Equipment Corporation, Mitre Corporation, ACM SIGPLAN, Sun Microsystems, and Lucid, Inc.
- Volume III Issue 1 (July 1989) through Volume VIII Issue 2 (May-August 1995). Technical publication of ACM SIGPLAN.
"During the very successful 'Lisp Conference' at MIT in 1986 (> 600 attendees) Mary van Deusen approached me and described a rather simple plan for starting up a journal and getting it escalated up into SIGPLAN's repertoire of newsletters. Using my connections with the Lisp vendors (who supplied the money on a rotating basis) and also with a wide circle of Lisp 'literati' who would write papers (some effectively even became columnists) we had an instant 'hit' in the first year." [JonL White, personal communication to Paul McJones, 8/27/2008]
Correspondence and memoranda
- Edmund C. Berkeley Papers, 1928-1988, Charles Babbage Institute, CBI 50.
Finding aid
at CBI
- #20:LISP, 1964-1970. (Box 4, folders 45-68; Box 5, folders 1-57; Box 6, folders 1-56; Box 7, folders 1-4) [notes from Dan Bobrow class, articles, memos, correspondence and computer printouts on LISP and Miniature LISP (LIMP) Primer development by ECB and Mike Levin]
- #24: LISP thesaurus, 1968. (Box 7, folder 7) [notes, report segment; approximately 35 pages];
- #240: LISP thesaurus and maintenance project, 1967-1968. (Box 48, folders 5-13) [drafts, correspondence, computer printouts, notes, and mailing lists; approximately 600 pages]
- Frans J. Faase. The origin of CAR and CDR in LISP. Web site. Summarizes a thread on alt.folklore.computers with email follow-ups; includes contributions by Steve Russell, Alan Kotok, and Peter Samson. Online at www.iwriteiam.nl
Photographs
- John McCarthy, black&white photograph, date unknown (late 1950s?), from collection of Herbert Stoyan. Online at Stanford University
- Six participants in the 1960 Algol conference in Paris. The picture was taken at the 1974 ACM conference on the history of programming languages. Top row: John McCarthy, Fritz Bauer, Joe Wegstein. Bottom row: John Backus, Peter Naur, Alan Perlis. Online at Stanford University
- John McCarthy, black&white photograph, date unknown (contemporary). Online at Stanford University
- John McCarthy, color photograph, date unknown (contemporary). Online at Stanford University
- John McCarthy, color photograph by Bart Nagel for Time Digital, date unknown (contemporary). Online at www.bartnagel.com
- Larry Masinter, Danny Bobrow, Sanjay Mittal, and Mark Stefik demonstrating Interlisp-D features, color photographs, early 1980s. Online at www.parc.com
- Speakers at the 2002 International Lisp Conference in San Francisco. Online
Audio/video
- John McCarthy. Talk on LISP History. [Audio recording?] M.I.T., 1974,
Massachusetts Institute of Technology, Cambridge, Massachusetts.
Transcript, July 10, 1975. [Stoyan, LISP Bibliography]
- Excerpts from LISP session. History of Programming Languages Conference, 1-3 June 1978, Los Angeles, CA. Real Media and QuickTime format. Online at Virginia Tech
- Daniel G. Bobrow. The Common Lisp Object Standard. Video of introduction to CLOS. 1987. Online at www.archive.org
- International Lisp Conference 2002.
- Videos available from Franz Inc.?
- Presentations .tar.gz at lemonodor.com
- European Common Lisp Meeting, Amsterdam, April 24, 2005. Videos and slides for several presentations. Online at weitze.de
- International Lisp Conference 2007.
- Herbert Stoyan. Lisp Themes and History. Audio of presentation. Online at international-lisp-conference.org
- Full list of audio of presentations Online at international-lisp-conference.org
- Guy L. Steele, Jr. and Richard P. Gabriel. The evolution of Lisp. Reenactment of 1993 History of Programming Languages lecture. OOPSLA 2008. Video and synchronized slides at InfoQ.com
- John McCarthy. Interview by Guy L. Steele, Jr. OOPSLA 2008. Video at InfoQ.com
- See also: Lisp Videos topic of CLiki. Online at cliki.net
Related resources
- MIT Artificial Intelligence Memos. http://www.ai.mit.edu/research/publications/pubs_browse.shtml
- Stanford University Computer Science Technical Reports, 1963-1968. PUB markup
- Les Earnest, Editor. Final Report : The First Ten years of Artificial Intelligence Research at Stanford. Stanford University, Artificial Intelligence Laboratory Memo AIM-228, Computer Science Department Report No. STAN-CS-74-409, July 1973. Online at historical.ncstrl.org
- Mark Kantrowitz. CMU Artificial Intelligence Repository. Web site, last
updated February 13, 1995.
Online at www.cs.cmu.edu
See for example: lang/lisp/impl/ and lang/others
- Herbert Stoyan. Lisp History.
Online at
Friedrich Alexander University of Erlangen-Nürnberg
"Herbert Stoyan began his study of the history of Lisp in the early 1970s, while in East Germany. He carried out this study by writing letters to everyone whose name he could find in the documents as well as by getting every book and report he could. In 1979 he applied to emigrate from East Germany, was arrested, spent six months in prison and then was permitted to emigrate to West Germany. When he got out of East Germany, he visited M.I.T. and examined every document he could find relevant to the history of Lisp and also interviewed everyone he could. He is now Professor of Computer Science at the University of Erlangen-Nürnberg in Erlangen, Germany, where his group works on AI. His history of Lisp is also on-line." [ALU Lisp History as captured by Raymond de Lacaze at SRC]
Includes History and Bibliography sections cited above.
- Tim Shoppa. PDP-10 Software Archives. TOPS-10 and TOPS-20 software from Digital Equipment Corporation, the DECUS user group, M.I.T., and other sources. Includes operating systems, utilities, programming languages, and applications. http://pdp-10.trailing-edge.com/
- PDP Planet. A portal into the Paul Allen collection of Digital Equipment Corporation mainframes and minicomputers. Includes XKL Toad-1 System (PDP-10 clone) running the Tops-20 v7.1 operating system with MacLisp. Accounts available for the public. http://www.pdpplanet.com/
