Getting Going with Common Lisp
- Getting Going with Common Lisp on MacOSX; But I'd advise to use emacsformacosx.com instead of Aquamacs.
- Getting Going with Common Lisp on Linux
- Getting Going with Common Lisp on Microsoft Windows
and add paredit.el to edit parentheses even more easily.
Getting a Lisp
Alternative ways to download and install a Common Lisp implementation.
Some resources for bootstrapping a useful Lisp environment on various platforms:
- Getting started in Common Lisp on Ubuntu
- LispWorks Personal for Windows (free trial edition)
- Allegro CL Express for Windows (free trial edition)
- Lisp Cabinet for Windows packages several Free implementations with Emacs
Books and tutorials
Read Peter Seibel's excellent book Practical Common Lisp, available for free online, or in dead-tree form. This is especially a good book for anyone familiar with programming in other languages and wants to learn Lisp for real-world use.
If you are new to programming in general, these books may be better choices to begin with:
- Common Lisp: A Gentle Introduction to Symbolic Computation by David S. Touretzky
- Successful Lisp: How to Understand and Use Common Lisp by David B. Lamkins
- Structure and Interpretation of Computer Programs 2nd Edition (SICP) by Abelson and Sussman (uses Scheme rather than Common Lisp)
Other Online Tutorials.
There are numerous IRC channels on the Freenode server to help people with Common Lisp.
- #clnoobs - A channel devoted specifically for helping Common Lisp newbies get started.
- #lispcafe - A more laid-back version of #lisp, used for socialization and banter.
- #lispgames - Conversation about writing games in various lisps, mostly Common Lisp.
- #lispweb - Conversation about writing web applications in Common Lisp.
- #lisp - For on-topic technical discussion of lisp programs, issues, and implementations.
- the Common Lisp Hyperspec (CLHS) is a hypertext version of the standard with extensive indexing. Quick symbol lookup in the Hyperspec is available in SLIME.
- The Common Lisp Quick Reference is a condensed Common Lisp pocket reference available for free and suitable for printing.
- CLtL2 is outdated, but contains more useful descriptions of format and loop than the Hyperspec.
Cosman246's guide for Setting Up CLThis is for setting up CL, not learning how to use it
- Get a working implementation. Preferably SBCL
- Get Emacs
- Get Quicklisp
- Load SBCL from bash
- (load "/path/to/quicklisp.lisp")
- (ql:quickload "quicklisp-slime-helper")
- If necessary, edit your ~/.emacs and insert the following line:
(setq inferior-lisp-program "sbcl")
where you can substitute the name of the program that invokes your implementation of choice for sbcl