Learning

repo: GustavBertram/awesome-common-lisp-learning
category: Programming Languages


Awesome Common Lisp Learning Awesome

<div align="center"> <img src="LISP_logo_mid.png"> </div>

This list focuses on resources for learning Common Lisp, especially resources that I've found useful.

There are other Awesome Common Lisp lists that focus on other topics:

Contributions are welcome. Please read the contribution guidelines for details.

Contents

How To Use

  1. Get a Lisp environment.
  2. Bookmark the The Common Lisp Hyperspec.
  3. Download and work through a Lisp book of an appropriate level. Type the examples and play with the code. Feel free to switch books and try a different one.
  4. Try out Exercism.
  5. If you get stuck, find an online community and ask smart questions.
  6. Learn about Quicklisp.
  7. At some point, read your Lisp implementation's manual.

Lisp Environments

You can run a Lisp implementation directly, but an editing environment makes the experience easier.

Online References

  • [The Common Lisp Hyperspec (CLHS)](http://www.lispworks.com/documentation/common-lisp.html) - The language reference document for Common Lisp. Bookmark it now.
  • [The ANSI Common Lisp Standard Draft](http://cberr.us/tech_writings/notes/common_lisp_standard_draft.html) - 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](http://lispcookbook.github.io/cl-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.

Online Books

These books that are freely accessible online, arranged roughly in order from basic to advanced:

Offline Books

These are books that you'll have to buy, or borrow from a library.

Online Community

Library Management

These aren't libraries, but can help you find and install other libraries.

  • Quicklisp - A package management platform for Lisp libraries.
  • Quickdocs - Documentation for projects in Quicklisp.
  • [State of the Common Lisp Ecosystem, 2015](http://borretti.me/article/common-lisp-sotu-2015) - Article about what libraries you should use, and why.
  • Articulate Common Lisp - Lists some useful libraries.

Common Lisp Implementations

This section lists some common CL implementations and their manuals in alphabetical order. Unless otherwise noted, these are free software implementations. See also the Cliki's list of free software Common Lisp Implementations.

Credit

I got a lot of the information from Rainer Joswig's Stack Overflow answer on learning Common Lisp, and from the now-defunct Stack Overflow Documents site. The Cliki's Getting Started page was also invaluable.

[[curator]]
I'm the Curator. I can help you navigate, organize, and curate this wiki. What would you like to do?