Lisp Resources
In this document, the Lisp word usually refers to the ANSI standardized Common Lisp language (ANSI INCITS 226-1994), even if references are also made to other dialects of Lisp.
Summary
Common Lisp (CL) is a general purpose and very high-level programming language that supports imperative, functional and object-oriented programming style.
Some of the attractive features of Common Lisp are:
- rich set of data types
- A large library of utilities (for example, there are about 100 mathematical functions)
- An interactive and incremental fast development model (not the usual painful compile, link and test model), whether the source code is interpreted, compiled or a mix of both.
- Dynamic memory management
- A sophisticated error handling system
- Its Object System (CLOS) which is the most featured object-oriented system to date, at least when compared to C++ and Java.
For more information about the features of Common Lisp, see What is Lisp? and a discussion about myths and wrong opinions associated with Lisp.
Thanks to its stunning power of expressiveness, Common Lisp offers a technological advantage to its users.
The following articles show some of the advantages of CL over mainstream languages like Java and C++.
- Lisp Lives! from Software Development Magazine, March 2004
- Report on Programming Languages, Space Telescope Science Institute, John Michael Adams, 2003
- Beating the Averages by Paul Graham, 2001. Viaweb is a WEB-based application written in Lisp and sold in 1998 to Yayoo for $49 million.
- On using Common Lisp for Scientific Computing (Postscript), N. Neuss, 2002
- Software Fault Prevention by Language Choice: Why C is Not My Favorite Language by Richard Fateman, University of California, Berkeley, 2001
- Lisp as an Alternative to Java by Peter Norvig
- Accelerating Hindsight: Lisp as a Vehicle for Rapid Prototyping, by Kent M. Pitman, 1994
Examples:
More examples on these sites: ALU (Industry Application and Success Stories), Franz, Lispwork.
- AllegroServe , a free web server for use with Common Lisp
- CL-HTTP, the Common Lisp Hypermedia Server developed by the M.I.T. Artificial Intelligence Laboratory
- Lispweb Mailing List, intended for the discussion of the use of Lisp for web development
- Scsh, a Unix shell which uses Scheme as its scripting language
- Resources for Lispworks: Dmitri A. Ivanov Lisp projects
For a complete list of free and commercial Lisp implementations, see ALU
Some Common Lisp vendors offer free, more or less limited versions of their commercial products:
On-line documents in French
There are many good books about Common Lisp. Here are a few of them:
- For a beginner the first 17 chapters of Lisp by Winston and Horn (Addison Wesley, 3rd edition) are an excellent introduction to programming and Lisp. The following chapters are application examples drawn from the Artificial Intelligence field.
- Object-oriented Common Lisp by Stephen Slade (Prentice Hall) is a nice book for those who already have some experience programming. This book can be used as a reference.
- Object-Oriented Programming in Common Lisp - A Programmer's Guide to CLOS by Sonia Keene (Addison Wesley) is a must-have for anyone who wants to learn about object-oriented design and use the object-oriented features of Common Lisp.
- Traité de programmation en Common Lisp by Robert Strandh and Irène Durand is a book (in French) that supports a programming course at the Bordeaux University.
More Lisp books (ALU).
The following FAQs are no longer updated but still useful: