Lisp and Scheme

Development · Tutorials & FAQs · Reference · External

LISP is a list-processing language originally developed by John McCarthy at MIT in 1960 for use in artificial intelligence research. Notable for its use of lists enclosed in parentheses for representing both programs and data, it is sometimes said that LISP is an acronym for "Lots of Irritating Single Parentheses". The fact that programs and data are both represented as lists makes this one of the few high-level languages which can generate data and then execute it as code.

The flexibility of Lisp means that many Lisp dialects have developed over the past 40 years, and Common Lisp was an attempt to re-unify those dialects in a single language. Common Lisp is the first ANSI-standardised object-oriented language, as it incorporates CLOS, the Common Lisp Object System (although Ada 95 still claims the record for the first ISO-standardised object-oriented language).

Scheme (sometimes described as an "UnCommon Lisp") is a simple and elegant dialect of Lisp which is in widespread use in teaching and research, although it is perhaps closer in spirit to more modern functional languages like ML than it is to the original Lisp tradition.


Development tools:

Software package Harlequin LispWorks
The personal edition of Harlequin's commercial Lisp implementation.
   ¤  Sep 1998. Reproduced by permission; NOT REDISTRIBUTABLE without the express permission of Harlequin.
Home site: http://www.harlequin.com/
Software package Harlequin LispWorks documentation
Over 150 megabytes of documentation to accompany Harlequin LispWorks, including the ANSI Standard for Common Lisp and many other goodies.
   ¤  Sep 1998. Reproduced by permission; NOT REDISTRIBUTABLE without the express permission of Harlequin.
Home site: http://www.harlequin.com/
Software package CLisp
A free Common Lisp implementation for Windows.
   ¤  May 1997. Free software under the terms of the GNU General Public License.
Home site: http://www.simtel.net/simtel.net/msdos/xlisp.html
Software package DrScheme
A free Scheme implementation for Windows from PLT Software (Rice University).
   ¤  Sep 2000. Free software under the terms of the GNU General Public License.
Home site: http://www.cs.rice.edu/CS/PLT/
Software package MIT Scheme 7.5.17
An implementation of Scheme for Windows.
   ¤  Jul 2001. Free software under the terms of the GNU General Public License.
Home site: http://www-swiss.ai.mit.edu/projects/scheme/


Tutorials and FAQs:

Document A Lisp Primer
An excellent introductory guide to Lisp.
   ¤  27 May 1999. Reproduced by permission.
Home site: http://snaefell.tamu.edu/~colin/lp/
Document The History of Lisp
By John McCarthy, the original creator of Lisp.
   ¤  12 Feb 1979. Reproduced by permission.
Home site: http://www-formal.stanford.edu/jmc/history/lisp.html
Document Lisp: Good News, Bad News, How to Win Big
A look at the successes and failures of Lisp.
   ¤  3 Aug 1993. Reproduced by permission.
Home site: http://www.ai.mit.edu/articles/good-news/good-news.html
Document Teach Yourself Scheme in Fixnum Days
A Scheme tutorial. If you don't already know anything about Scheme, it might help to know that 'fixnum' means a small integer (e.g. 21).
   ¤  26 Apr 2000. Freely redistributable.
Home site: http://www.cs.rice.edu/~dorai/t-y-scheme/
Document The MIT Scheme User's Manual
A guide to installing and running MIT Scheme.
   ¤  Jul 2001. Freely redistributable.
Home site: http://www-swiss.ai.mit.edu/projects/scheme/documentation/user_toc.html
Document The Lisp FAQ
Questions and answers about Lisp from the newsgroup comp.lang.lisp.
   ¤  14 Mar 1997. Reproduced by permission.
Home site: http://www.cs.cmu.edu/Web/Groups/AI/html/faqs/lang/lisp/top.html
Document The Scheme FAQ
Questions and answers about Scheme from the newsgroup comp.lang.scheme.
   ¤  13 Aug 1997. Freely redistributable.
Home site: http://www.faqs.org/
Document Introduction to Programming Langauges
A comparative study of programming languages, their development and the development of the programming paradigms that they embody.
   ¤  3 Aug 2001. Reproduced by permission.
Home site: http://cs.wwc.edu/~aabyan/221_2/PLBOOK/
Document What is Artificial Intelligence?
A layman's introduction by John McCarthy, the original creator of Lisp.
   ¤  Apr 2000. Reproduced by permission.
Home site: http://www-formal.stanford.edu/jmc/whatisai/whatisai.html


Reference material:

Document Recursive Functions of Symbolic Expressions and their Computation by Machine, Part I
John McCarthy's original paper on Lisp from Communications of the ACM, April 1960.
   ¤  Apr 1960. Reproduced by permission.
Home site: http://www-formal.stanford.edu/jmc/recursive/recursive.html
Document Common Lisp: The Language
A complete online copy of the 2nd edition of Guy L. Steele's classic reference book.
   ¤  17 Nov 1994. Reproduced by permission.
Home site: http://www.cs.cmu.edu/Web/Groups/AI/html/cltl/cltl2.html
Document The Revised(5) Report on the Algorithmic Language Scheme
The official definition of the Scheme language.
   ¤  5 Dec 1998. Freely redistributable.
Home site: http://www-swiss.ai.mit.edu/~jaffer/r5rs_toc.html
Document The MIT Scheme Reference Manual
The complete programmer's reference for MIT Scheme.
   ¤  18 Jul 2001. Freely redistributable.
Home site: http://www-swiss.ai.mit.edu/projects/scheme/documentation/scheme_toc.html
Document The SOS Reference Manual
The Scheme Object System (the Scheme equivalent of CLOS) included with the MIT Scheme distribution.
   ¤  18 Jul 2001. Freely redistributable.
Home site: http://www-swiss.ai.mit.edu/projects/scheme/documentation/sos_toc.html


External resources:

External website Franz
Another company which has a free implementation of Common Lisp for Windows available for downloading.
External website Lisp links at Yahoo
These are also available at Yahoo UK.
External website Scheme links at Yahoo
These are also available at Yahoo UK.
External website The comp.lang.lisp newsgroup
A newsgroup for discussions of Lisp-related issues.
External website The comp.lang.scheme newsgroup
A newsgroup for discussions of Scheme-related issues.
External website The comp.functional newsgroup
A good source of information about functional programming in general.


BURKS version 6 · Copyright © John English 1996-2001. All rights reserved.