This library wraps the CLHS, a proprietary component!

Redistribution of verbatim copies of this library is permitted.

However, if you want to make ANY changes to it, you should first carefully read and understand the LICENSE and README files and legal documents referenced therein, including this one.

Load it with Quicklisp: (ql:quickload "clhs")
Library type: Installation helper , Project complexity: Simple
Project authors Wrapper Jean-Philippe Paradis
CL spec X3J13 Committee
CLHS Kent Pitman
CLHS © LispWorks Ltd
License Overall Mostly proprietary
Wrapper part Public Domain
CLHS part Proprietary

This installation helper makes it even easier to install a copy of the CLHS locally.

CLHS (thin ASDF wrapper) » Overview

The HyperSpec-7-0 directory in this thin ASDF wrapper is a complete and unmodified copy of Lispworks' Common Lisp HyperSpec version 7.0 (referenced from
Redistribution of the HyperSpec is made with permission from LispWorks per the terms and restrictions set forth at
You may further redistribute the HyperSpec subject to the same terms and restrictions.

This thin ASDF wrapper was prepared by Jean-Philippe Paradis ( for inclusion in Quicklisp and is not endorsed by LispWorks Ltd. Common Lisp HyperSpec is a registered trademark of LispWorks Ltd. Jean-Philippe Paradis is not a lawyer, has not consulted a lawyer, and prepared this thin ASDF wrapper as a community service on a "good faith, best-effort" basis.

The original download was a .tar.gz file and has been uncompressed for your convenience. The primary use cases for downloading the HyperSpec to your hard drive instead of using the online documentation are to benefit from the increased responsiveness inherent in browsing a local resource and to ensure reliable, fast access from anywhere while on the go (ex: laptop, smartphone).

CLHS (thin ASDF wrapper) » Emacs integration

Use (clhs:print-emacs-setup-form) to print the command used to tell Emacs to use your new local copy of CLHS.

(Note that the default setup involves automatic creation and usage of a symlink that points to the 'HyperSpec' directory within the "real top-level" 'HyperSpec-7-0' directory. Don't redistribute the former without the latter!)

Slime has commands to quickly get at what you want in the HyperSpec. They are:

slime-documentation-lookup (C-c C-d h)
Lookup a symbol (such as "make-instance").
common-lisp-hyperspec-lookup-reader-macro (C-c C-d #)
Lookup a reader-macro (such as "#'" or "(").
common-lisp-hyperspec-format (C-c C-d ~)
Lookup a FORMAT directive (such as "~A").

If the default browser used is not the one you wanted, here's how you might tell Emacs to use Firefox instead:

(setq browse-url-firefox-program "firefox")

Or Google Chrome:

(setq browse-url-browser-function 'browse-url-generic)
(setq browse-url-generic-program "google-chrome")

Common Lisp HyperSpec(tm) is a registered trademark of LispWorks Ltd.
The author of this library is not affiliated with LispWorks Ltd.