CCLDoc Documentation System

CCLDoc is a system for creating lisp documentation. It uses s-expressions to represent document structure, markup, cross references, and contents. It has a small number of basic operators, supports macros for syntax extensions, and supports a simple syntax for embedding expressions in strings for added convenience.

The CCLDoc overview describes how it works.

Clozure CL Documentation

The documentation for Clozure CL is written in CCLDoc. (See source:/trunk/ccl-documentation to browse it.) Here is how to use CCLDoc to format the CCL documentation.

  1. Obtain and install CCL. See
  2. Obtain and install Quicklisp (see
  3. Check out the CCLDoc sources
    • cd ~/quicklisp/local-projects/
    • git clone

Now, start CCL, and perform the following steps:

? (load "home:quicklisp;setup")
? (ql:quickload :ccldoc)
? (defparameter *d* (ccldoc:load-document "ccl:doc;manual;ccl.ccldoc"))
? (ccldoc::output-html *d* "/tmp/ccl.html" :stylesheet "ccl.css")

You can then view the generated ccl.html file in your browser. The generated HTML expects to use a style file named ccl.css in the same directory.

There is also a not-quite-complete LaTeX converter. To use it, do (output-latex *d* "ccl.tex") and then process the ccl.tex file with xelatex to produce a PDF file. The version of xelatex that comes with MacTeX 2014 works.

Last modified 4 years ago Last modified on Dec 2, 2017, 6:53:42 PM