LISP 2 family
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.
Documentation
- Daniel J. Edwards. LISP II Garbage Collector. Memo 19, Artificial Intelligence Project, RLE and MIT Computation Center, no date, 2 pages. PDF at MIT
- Anonymous. LISP 2 Specifications Conference. Artificial Intelligence Group, Stanford University, Stanford California, [July 1963], 1 page. Agenda. PDF
- J. McCarthy. Storage Conventions in LISP 2, AIM-8 (Preliminary), Stanford University Artificial Intelligence Project, Stanford, Sep. 26, 1963, 5 pages. PDF
Undated, but McCarthy's AIM-8 begins with: "At the LISP 2 meeting in July ...".
- 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
- Daniel G. Bobrow. String Manipulation in the New Language. Memo 71, Artificial
Intelligence Project and Memorandum MAC-M-176, Project MAC, Massachusetts
Institute of Technology, July 28, 1964, 8 pages.
PDF at MIT
"String manipulation can be made convenient within the *** language by implementing two function
1) match[workspace; pattern]
and
2) construct[format; pmatch].
In this memo I describe how I think these two functions can be implemented, and how they might be used to express operations now conveniently denoted in string manipulation languages such as COMIT, SNOBOL, and METEOR." - R. W. Mitchell. LISP 2 Specifications Proposal. AIM-21, Stanford Artificial Intelligence
Project, Stanford University, August 19, 1964, 12 pages. PDF
"Specifications for a LISP 2 system are proposed. The source language is basically ALGOL 60 extended to include list processing, input/output and language extension facilities. The system would be implemented with a source language translator and optimizer, the output of which could be processed by either an interpreter or a compiler. The implementation is specified for a single address computer with particular reference to an IBM 7090 where necessary. Expected efficiency of the system for list processing is significantly greater than the LISP 1.5 interpreter and also somewhat better than the LISP 1.5 compiler. For execution of numeric algorithms the system should be comparable to many current "algebraic" compilers. Some familiarity with LISP 1.5, ALGOL and the IBM 7090 is assumed."
- Edward Fredkin. A LISP II Programming System. Proposal No. 64-12 submitted to System Development Corporation, Information International, Inc., December 30, 1964. PDF
- Michael Levin. The Internal Language. Memo 1, LISP II Project, Information International, Inc., January 26, 1965. Gift of Clark Weissman. PDF
- Edward Fredkin. Cover letter to Memo 1 announcing LISP II meeting at Project MAC originally scheduled for February 3, 1965 was postponed to February 8, 1965. January 28, 1965, 1 page. Gift of Clark Weissman. PDF
- S. L. Kameny and M. Levin. The Internal Language. Memo No. 1A, LISP II Project, TM-2260/002/00, System Development Corporation, Santa Monica, California, February 19, 1965, 14 pages. Gift of Clark Weissman. PDF
- Daniel G. Bobrow. The COMIT Feature in LISP II. Memo 2, LISP II Project, AI Memo 76, MAC Memo 219, February 18, 1965, 9 pages. Gift of Clark Weissman. PDF
- M. Levin. Functional Arguments. Memo 3, LISP II Project, TM-2260/000/00, System Development Corporation, Santa Monica, California, February 18, 1965, 4 pages. Gift of Clark Weissman. PDF
- John McCarthy and Dean E. Wooldridge, Jr. A Solution of the Functional Arguments Problem in Lisp. Undated; distributed with Memo 3 above. Gift of Clark Weissman. PDF
In Memo 3, Levin notes: "This scheme does exactly the same thing as the McCarthy-Wooldridge proposal does. The user never sees the macro-expansion."
- John McCarthy and Dean E. Wooldridge, Jr. A Solution of the Functional Arguments Problem in Lisp. Undated; distributed with Memo 3 above. Gift of Clark Weissman. PDF
- M. Levin. LAP. Memo No. 4, LISP II Project, TM-2260/001/00, System Development Corporation, Santa Monica, California, February 19, 1965, 5 pages. Gift of Clark Weissman. PDF
- Clark Weissman. Input/Output for LISP II. Memo #5, Lisp II Project, TM-2260/003/00, System Development Corporation, DRAFT - February 19, 1965. PDF
- Michael Levin. Corrections to Memo 1A. Memo 1B, LISP II Project, Information International, Inc, March 8, 1965, 4 pages. PDF
"Storage conventions and a basic set of functions for LISP 2 are proposed. Since the memo was written, a way of supplementing the features of this system with the unique storage of list structure using a hash rule for computing the address in a separate free storage area for lists has been found."
- [M. Levin.] LISP II Project, Memo 7, Information International, Inc., Cambridge, Mass., 1965. From Stoyan collection. PDF
- Paul Abrahams. Input-Output for LISP II. Memo 8, LISP II Project, Information International Incorporated, New York Office, April 13, 1965, 12 pages. Gift of Clark Weissman. PDF
"This memo is intended as an augmentation and modification of the earlier input-output system proposed by Clark Weissman in an earlier memo [Memo #5, February 19, 1965]."
- M. Levin. Internal Storage Conventions for LISP II. Memo #9 [first draft], LISP II Project, Information International Inc., July 7, 1965, 9 pages. Gift of Clark Weissman. PDF
- Anonymous [Lowell Hawkinson?]. [Data segment and garbage collection.] Undated, 11 unnumbered pages. Extract from longer document? Gift of Clark Weissman. PDF
- M. Levin and S. Kameny. The Syntax of Tokens. Memo No. 11, LISP II Project, TM-2260/004/00, System Development Corporation, Santa Monica, California, August 23, 1965, 4 pages. Gift of Clark Weissman. PDF
- M. Levin. Programming Examples. Memo 13, LISP II Project, Information International, Inc., Cambridge, Mass., August 23, 1965. PDF
- Anonymous. [Source language syntax for blocks and declarations.] Memo 14 [draft], undated, 1 page. Gift of Clark Weissman. PDF
- S. L. Kameny. Internal Storage Conventions for Q-32 LISP II. Memo #9 [second draft], LISP II Project, System Development Corporation, Santa Monica, California, September 30, 1965, 14 pages. Gift of Clark Weissman. PDF
- Clark Weissman. LISP II Input/Output. Memo No. 16, LISP II Project, TM-2260/00x/00, [System Development Corporation, Santa Monica, California], undated, ii+36 pages. Gift of Clark Weissman. PDF
- S. L. Kameny. The Internal Language. Memo No. 1, LISP II Project, TM-2260/002/01, System Development Corporation, Santa Monica, California, September 3, 1965, 30 pages. Gift of Clark Weissman. PDF
- Donna C. Firth. LISP II Primitives. Memo No. 17, LISP II Project, TM-2260/005/05, System Development Corporation, Santa Monica, California, September 10, 1965, 5 pages. With extra photocopied page of additional functions. Gift of Clark Weissman. PDF
- Mike Levin and Ed Berkeley. Primer for LISP 2. Gift of Clark Weissman.
- Erwin Book. The LISP version of the Meta Compiler. TM-2710/330/00, System Development Corporation, Santa Monica, California, November 2, 1965, PDF at bitsavers.org
- S. L. Kameny and L. Hawkinson. LISP II Intermediate Language. System Development Corporation, TM-2710/220/00, November 4, 1965. PDF
- S. L. Kameny and L. Hawkinson. LISP II Internal Storage Conventions. System Development Corporation, TM-2710/570/00, December 21, 1965. PDF
- Modifications to pages 10 and 11. January 11, 1966, 1 page. PDF
- R. A. Saunders, J. A. Barnett, and Donna Firth. The LISP 2 Compiler. TM-2710/320/01, System Development Corporation, Santa Monica, California, February 1, 1966. PDF
- S. L. Kameny. LISP 2 Primitives. TM-2260/005/05, System Development Corporation, February 9, 1966, 11 pages. PDF
- S. L. Kameny and L. Hawkinson. LISP Edit Program LISPED. TM-2337/100/01, System Development Corporation, Santa Monica, California, April 13, 1966, 19+4 pages. Gift of Clark Weissman. PDF
- Erwin Book. The LISP 2 Syntax Translator. TM-2710/331/00, System Development Corporation, Santa Monica, California, April 15, 1966. PDF
- Clark Weissman. [LISP 2 Programming Examples: SUMSQUARE and LCS.] SP-2450, System Development Corporation, Santa Monica, California, April 28, 1966, 2 pages. Gift of Clark Weissman. PDF
- J. A. Barnett. SIM, An S-Expression Pattern-Matching Function. TM-2710/260/00, System Development Corporation, Santa Monica, California, June 29, 1966. PDF
- L. Hawkinson. Technical Progress Report LISP 2 : Period Ending July 6, 1966. Information International Inc., July 12, 1966. PDF
- Michael Levin and Edmund Berkeley. LISP 2 PRIMER. TM-2710/101/00 (draft), System Development Corporation, Santa Monica, California, July 15, 1966, 165 pages. Gift of Clark Weissman. PDF
- Donna Firth and S.L. Kameny. Syntax of LISP 2 Tokens. TM-2710/210/00, System Development Corporation, Santa Monica, California, August 25, 1966. PDF
- C. Weissman. LISP 2 Project : Input-Output. TM-2710/240/01, System Development Corporation, Santa Monica, California, September 16, 1966. PDF
- J. A. Barnett. LISP 2 Programming Examples. SP-2604, System Development Corporation, September 20, 1966, 13 pages. PDF
- M. V. Howard. Operating Instructions for the LISP 2 Supervisor in the LISP 2 Core Image. TM-2710/510/00, System Development Corporation, October 14, 1966. PDF
- S. L. Kameny. LISP 2 Source Language Syntax Specifications for Syntax Translator. TM-2710/230/00, System Development Corporation, Santa Monica, California, December 12, 1966. PDF
- Anonymous. Are storage allocation headaches getting you down? Humorous one-page flyer for LISP 2. Information International Inc., 1967. PDF
- Paul W. Abrahams. LISP II Debugging. Technical memorandum, 1967.
- Paul Abrahams. Conventions for writing LISP 2 syntax equations. Informal memorandum, System Development Corporation, January 10, 1967. PDF
- LISP 2 for IBM System/360. Document series TM-3417.
- R. Wills. LISP 2 for the IBM S/360. TM-3417/000/00, System Development Corporation, Santa Monica, California, April 26, 1967, 3 pages. Gift of Clark Weissman. PDF
"This document establishes a document series (TM-3417) for the LISP 2 language and processor designed for the IBM S/360 computer. This series includes documents describing the syntax and semantics of the LISP 2 language, system and program design specifications, documentation standards and conventions, and user information."
- R. Wills. LISP 2 Document Conventions. TM-3417/001/00, System Development Corporation, Santa Monica, California, April 26, 1967, 6 pages. PDF
- Donna Firth and Paul W. Abrahams. LISP 2 Language Specifications. TM-3417/200/00, System Development Corporation, Santa Monica, California, April 26, 1967, 48 pages. Gift of Clark Weissman. PDF
- J. Barnett. LISP 2 Compiler Specifications. TM-3417/300/00, System Development Corporation, Santa Monica, California, April 26, 1967, 8 pages. Gift of Clark Weissman. PDF
- J. Barnett. LISP 2 Compiler Context Resolver Language and Processor Specifications. TM-3417/340/00, System Development Corporation, Santa Monica, California, April 26, 1967, 26 pages. Gift of Clark Weissman. PDF
- J. Barnett. LISP 2 Compiler Type Resolver Language and Processor Specification. TM-3417/360/00, System Development Corporation, Santa Monica, California, April 26, 1967, 16 pages. Gift of Clark Weissman.PDF
- D. Anschultz. LISP 2 Compiler Machine Link Specifications. TM-3417/380/00, System Development Corporation, Santa Monica, California, April 26, 1967, 4 pages. Gift of Clark Weissman.PDF
- D. Anschultz. LISP 2 Compiler Register Counter and Code Generator Specifications. TM-3417/385/00, System Development Corporation, Santa Monica, California, April 26, 1967, 12 pages. Gift of Clark Weissman.PDF
- D. Crandell. LISP 2 Assembly Program (LAP) Specification. TM-3417/400/00, System Development Corporation, Santa Monica, California, April 26, 1967, 24 pages. Gift of Clark Weissman. PDF
- P. Stygar. LISP 2 Garbage Collector Specification. TM-3417/500/00, System Development Corporation, Santa Monica, California, April 26, 1967, 16 pages. Gift of Clark Weissman. PDF
- R. E. Long. LISP 2 Storage Management: Paging of Binary Programs. TM-3417/525/00, System Development Corporation, Santa Monica, California, April 26, 1967, 5 pages. PDF
- L. Hawkinson. LISP 2 Internal Storage Conventions. TM-3417/550/00, System Development Corporation, Santa Monica, California, April 26, 1967, 29 pages. PDF
- P. Stygar. LISP 2 Storage Management: The "Growing Pain" Problem. TM-3417/575/00, System Development Corporation, Santa Monica, California, April 26, 1967, 6 pages. PDF
- Donna Firth. LISP 2 Input/Output Specifications. TM-3417/600/00, System Development Corporation, Santa Monica, California, April 26, 1967, 23 pages. PDF
- L. Hawkinson. LISP 2 Core Image Generator (CIG) Specifications. TM-3417/700/00, System Development Corporation, Santa Monica, California, April 26, 1967, 5 pages. PDF
- R. Wills. LISP 2 for the IBM S/360. TM-3417/000/00, System Development Corporation, Santa Monica, California, April 26, 1967, 3 pages. Gift of Clark Weissman. PDF
"This correction sheet is intended to keep Memo 1A current. More corrections will be issued from time to time, and a new memo released when they become too numerous. The corrections are numbered according to the paragraphs of the original."
Sections: Boolean connectives, bit operators, relations, arithmetic, Lisp, atom classifiers, arrays, strings, property lists, system cheaters, conversion.
These examples appear in "The LISP 2 Programming Language and System" [FJCC 1966] [TM-3163].
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 of the Fall Joint Computer Conference, Volume 29, AFIPS, 1966, pages 661-676. PDF
- Technical Memorandum TM-3163,
Information International Inc. and System Development Corporation,
September 26, 1966, iv+28 pages. PDF
Revision reflecting "certain minor changes that have been made to the language since the earlier publication."
- Stanley L. Kameny, Lowell Hawkinson, Clark Weissman, Jeffrey A. Barnett, Robert A. Saunders, Erwin Book, Donna Firth, and Paul W. Abrahams. The Implementation of LISP 2. 1966? PDF
- Stanley L. Kameny. Remarks on LISP 2 in Panels session on List and String Processing in General Programming Languages at the IFIP working conference on Symbol Manipulation Languages, Pisa, September 1966. In: Daniel G. Bobrow (editor), Symbol Manipulation Languages and Techniques, North-Holland, 1968, pages 342-343 and 346-350. For extract see [Diarmuid Pigott. LISP 2. HOPL.info]
- C. Baum, editor. LISP 2 section. Research & Technology Division Report for 1966, TM-530/010/0, System Development Corporation, January 1967. Online at eric.ed.gov
- 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
- Jeffrey A. Barnett. Algorithmic Compilation of Predicates. SP-(L)-2856, System Development Corporation, February 16, 1968, 12 pages. Gift of Clark Weissman. PDF
- See also: Diarmuid Pigott. LISP 2. Online Historical Encyclopaedia of Programming Languages. Online at hopl.info
- Herbert Stoyan. Rise and Fall of LISP2, 1964-1967. Unpublished manuscript: translation and expansion of section from Chapter 4 (Die Geschichte der Programmiersprache LISP) of his book LISP - Anwendungsgebiete, Grundbegriffe, Geschicte (Akademie-Verlag, Berlin, 1980). With cover letter from Stoyan to Clark Weissman requesting his comments, circa 1984. Gift of Clark Weissman.
- Paul McJones. The LISP 2 Project. IEEE Annals of the History of Computing, October-December 2017, pages 85-92. Online (open access) at ieee.org Discussion at Dusty Decks blog
GTL for Burroughs B 5500 at Georgia Institute of Technology
- Martin Alexander. GTL -- Georgia Tech Language. Georgia Institute of Technology, Atlanta, Georgia. Extends Burroughs Extended Algol compiler with strings, records, complex arithmetic, list processing, plex processing, and extended I/O features. The list processing features are based on LISP 2.
- Source code. In CUBE library, version 13. See GTL-L200016.dat and GTL-200015.alg. Online at B5500 software repository
- GTL Programmers Reference Manual for the Burroughs B 5500. August 1974. PDF at bitsavers.org
CRISP for IBM 370 at SDC
CRISP was a Lisp-like programming language and system designed by Jeffrey A. Barnett and Doug Pintar specifically for speech research in the 1973-1974 timeframe. Its name derived from the phrase "Crunching Lisp," and it was to run on the IBM 370 using the VM operating system. The CRISP runtime system was implemented and used via a powerful assembler, although the higher-level CRISP language was not implemented. For an overview, see: Barnett 2010 and Barnett 2009.
- Jeff Barnett. Notes on SDC CRISP for IBM 370 Computers. July 2010. HTML
- J. A. Barnett and D. L. Pintar. CRISP: A Programming Language and System. TM-5455/000/00 (DRAFT), System Development Department, December 31, 1974, 323 pages. PDF
- Jeffrey A. Barnett. The CRISP Programming Language System: an Historical Overview. A slide presentation to the Albuquerque Lisp/Scheme Group, September 20, 2009. PDF