Emacs Starter Kits for Common Lisp
- Emacs4CL: A do-it-yourself kit to set up Common Lisp development environment with SBCL, Emacs, Slime, Paredit, Rainbow Delimiters and Quicklisp. Provides a step-by-step guide and a line-by-line explanation of every line of code that goes into ~/.emacs.d/init.el (or ~/.emacs) to turn vanilla Emacs into a Common Lisp development environment.
- Portacle: Portacle is a complete IDE for Common Lisp that you can take with you on a USB stick. It is multi-platform and can be run on Windows, OS X, and Linux. Since it does not require any complicated installation process, it is set up and running in no time.
More Setup Guides
- Getting Going with Common Lisp on Mac OS X; 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
- Also add paredit.el, Parinfer and/or another plugin 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 Archived website
- Getting started on Linux/OSX
- 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/tutorials 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)
- Common Lisp Cookbook
Other Online Tutorials.
There are numerous IRC channels on the Libera Chat server to help people with Common Lisp.
- #clschool - 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.
There are other channels for discussing other languages such as:
- 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.
- Get a tool to Obtain libraries, such as Quicklisp.
- Check out the current recommended libraries.
- Check out the awesome-cl list
- as well as lisp-lang.org's recommended libraries
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