Skip to content
45

Awesome Common Lisp Learning

A curated list of awesome Common Lisp learning resources

244 stars14 forks57 entriesLast push Oct 4, 2023 (2 years ago)License CC-BY-4.0

This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.

General

Libraries

Common Lisp

In 2 lists

Curated Libraries

Forked and updated from the above list.

Software

Applications built with Common Lisp

In 3 lists

Lisp Environments

Portacle

A portable and multiplatform Common Lisp environment. It ships a slightly customized Emacs with SLIME, SBCL (a popular Common Lisp implementation), Quicklisp and Git. No installation needed, so it's a very quick and easy way to get going.

In 2 lists

Lispbox

An IDE (Emacs + SLIME), Common Lisp implementation (Clozure Common Lisp) and library manager (Quicklisp), pre-packaged as archives for Windows, macOS and Linux. Descendant of "Lisp in a Box" mentioned in Practical Common Lisp.

Lispworks Personal Edition

A non-Emacs based IDE for LispWorks Lisp, with some restrictions.

Allegro Common Lisp

Has a free Express Edition IDE, and training videos on YouTube.

Articulate Common Lisp

A HOWTO for putting together a Lisp environment, and has information on useful libraries and how to structure projects.

Online References

The Common Lisp Hyperspec (CLHS)

The language reference document for Common Lisp. Bookmark it now.

Chapter 7

Covers the Common Lisp Object System (CLOS).

The ANSI Common Lisp Standard Draft

The last draft version of the ANSI INCITS 226-1994 (previously ANSI X3.226-1994) standard.; The draft is free, the standard isn't.; It's pretty much the same as the official standard, and some people prefer it to the CLHS.

The Common Lisp Cookbook

A list of useful Lisp recipes. Also contains a list of other online sources of CL information.

Common Lisp the Language (2nd Edition) by Guy L. Steele

A description of the Common Lisp language from just before it was standardized by ANSI. Don't use it as a reference.

Cliki on CLtL2

Claims it has more useful descriptions of LOOP and FORMAT than the CLHS does.

Stack Overflow on CLtL2

Some recommend using CLtL2 for insight and inspiration, but to use the CLHS when programming.

A list of differences between CLtL2 and the ANSI Common Lisp specification.

Chapter 28

Covers the Common Lisp Object System.

Online Books

Common Lisp: A Gentle Introduction to Symbolic Computation by David S. Touretzky

a good introduction for people new to programming. Contains code for really useful utilities like DTRACE and SDRAW.

Common Lisp: An interactive approach by Stuart C. Shapiro

A textbook that teaches mainly through the use of exercises.

Practical Common Lisp by Peter Seibel

A great introduction for experienced programmers, and tries to highlight from the very beginning what makes CL different to other languages.

In 3 lists

Common Lisp Koans

Not exactly a book, but a set of koans to help you learn the language.

In 2 lists

On Lisp by Paul Graham

A great book for intermediately experienced Lispers.

In 2 lists

Let Over Lambda by Doug Hoyte

An advanced book on Lisp Macros.; The first six chapters are available online.

Comments on Let Over Lambda

Several people recommend that you be comfortable with On Lisp before reading this book, and that the start is slow.

The chapter on closures

Has several non-trivial examples, and demonstrates the power of this feature.

Paradigms of Artificial Intelligence Programming by Peter Norvig

Has many interesting applications of Lisp, but is no longer a good reference for AI.

In 2 lists

Offline Books

Land of Lisp by Conrad Barski, MD

A fun introduction to Lisp that uses comics and has you writing games.; Available as an ebook.; A couple of the LOOP macros are written for x for y... which you can change to for x from 0 for y... to make them work in SBCL.; Has an errata page.; Most of the book is entertaining and fairly easy,…

In 2 lists

ANSI Common Lisp by Paul Graham

Good as a reference, covers CLOS, and has several example program implementations.; Plaintext versions of Chapter 1 and Chapter 2 are available online.

In 2 lists

Common Lisp Recipes by Edmund Weitz

A great set of Common Lisp patterns.

In 2 lists

Object-Oriented Programming in Common Lisp by Sonya E. Keene

An in-depth description of the CLOS, and shows how to use it with example applications.

The Art of the Metaobject Protocol by Gregor Kiczales, Jim des Rivieres, and Daniel G. Bobrow

Describes the CLOS Metaobject Protocol (MOP).

Chapters 5 and 6 (available online)

The specification of a metaobject protocol extension to CLOS, by Robert Strandh.; Superseded by the modern public domain CLOS MOP specification by Jean-Philippe Paradis (Hexstream).

Adam Tornhill on AMOP

Recommends reading Practical Common Lisp, then Object-Oriented Programming in Common Lisp, and then AMOP.

Online Community

Lisp Subreddit

An active community, and has loads of useful links and reference documents in the sidebar.

Common Lisp Subreddit

The Subreddit for Common Lisp.

In 2 lists

Exercism's Common Lisp track

An excellent way to learn the language through practice, have your code reviewed, and to discuss solutions with other people.

Lisp Discord server

Is a Discord for Lisp. Has a channel dedicated to Common Lisp and will happily answer questions.

Library Management

Quicklisp

A package management platform for Lisp libraries.

In 2 lists

Quickdocs

Documentation for projects in Quicklisp.

State of the Common Lisp Ecosystem, 2015

Article about what libraries you should use, and why.

Articulate Common Lisp

Lists some useful libraries.

Common Lisp Implementations

Allegro Common Lisp

Has a free Express Edition IDE, and training videos on YouTube.

ACL manual

Training videos on YouTube

CLISP

CLISP Manual

Clozure Common Lisp (CCL)

Clozure Common Lisp; compiler-only implementation, generates native code. LLGPL.

In 2 lists

CCL manual

Carnegie Mellon University Common Lisp (CMUCL)

CMUCL manual and other useful information

Embeddable Common Lisp (ECL)

Embeddable Common Lisp; compiles to C. GNU LGPL2.1.; WASM support in development (NLNET grant in 2025)

In 2 lists

ECL manual

LispWorks

Commercial, but as mentioned previously, has a Personal Edition with minor limitations.

LispWorks manual

Steel Bank Common Lisp (SBCL)

My personal favorite.

In 2 lists

SBCL manual

, system-wide event schedulers.

In 2 lists

Scieneer Common Lisp (SCL)

A commercial Linux and Unix implementation, but has an unrestricted free evaluation and non-commercial use version.

SCL manual

See category
94

Awesome Rust

rust-unofficial/awesome-rust

A curated list of Rust code and resources.

Fresh★ 60k1833 entriesPushed today
94

Awesome Mac

jaywcjlove/awesome-mac

 This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.

Fresh★ 115k1316 entriesPushed today
94

Awesome Python

vinta/awesome-python

The definitive list that answers "I want to do X in Python, which tool should I use?"

Fresh★ 324k504 entriesPushed today
94

Awesome C++

fffaraz/awesome-cpp

A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.

Fresh★ 74k1358 entriesPushed yesterday
94

Awesome Go

avelino/awesome-go

A curated list of awesome Go frameworks, libraries and software

Fresh★ 186k3119 entriesPushed yesterday
94

Awesome PHP

ziadoz/awesome-php

A curated list of amazingly awesome PHP libraries, resources and shiny things.

Fresh★ 33k87 entriesPushed 2 days ago