Lisp
- Paul Graham has an excellent, recent book on Lisp, "ANSI Common
Lisp". I highly recommend it. Information about his book, his more
advanced book, "On Lisp", source code, and other useful pointers
to Lisp resources can be found at http://www.eecs.harvard.edu/onlisp/.
The College now is using this as a text, and I noticed when I was recently
at Stanford, that they use it too -- a good recommendation in itself. Notice
also that Graham is the President of ViaWeb that makes a very successful
software system for online stores (electronic commerce). Guess what language
their system is written in!
- All of Common
Lisp the Language by Steele is on the Web in html form: http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/html/cltl/cltl2.html.
- Here is a local mirror of Steele's book that I grabbed from the CMU
site (with Web Devil to my Mac and then ftp'd to Unix): http://www.ccs.neu.edu/home/futrelle/docs/cltl/cltl2.html
- The LISP
FAQ is available from CMU, with many additional links.
- Jeff Dalton (Edinburgh AI Lab) has a Brief
Guide to CLOS.
Macintosh Common Lisp
The College has recently gotten a site license for Macintosh Common Lisp
and it is installed on all the lab Macs. It is a powerful and fully dynamic
language with run-time typing, threads, integrated debugger and inspector,
an excellent object system (CLOS), and more. By "dynamic" we mean
that functions can be redefined and variables changed on the fly and the
changes take effect essentially immediately. This leads to a very fast edit-run-debug-edit
cycle. MCL, like all modern Lisps, compiles into very tight and efficient
code. Type declarations can be omitted, allowing them to be discovered at
run-time, but if they are included, as they must be in C and especially
C++, the compiled code can be as fast as compiled C and C++. Professor Futrelle
uses MCL for virtually all of his research work on natural language and
diagram understanding. Here's the Web
site for MCL.
If you are a student in one of Professor Futrelle's classes, you may
be able to do all your machine problems in MCL, if you arrange it carefully
with him.
Return to Prof. Futrelle's home page