Using CL-HTTP with Allegro CL


CL-HTTP is the Common Lisp Hypermedia Server developed by John C. Mallery of the M.I.T. Artificial Intelligence Laboratory.

Beginning in version 5.0.1 Allegro Common Lisp has included features to support web servers. As a consequence we created a new port of cl-http for Allegro Common Lisp version 5.0.1 and newer versions.

This page will help you locate the cl-http source code and build it in your Lisp.

Supported versions of CL-HTTP

The official released version of cl-http can be found in this directory: New releases are not made very often, the latest being version 70-23 which was released in December of 1999. This version will work in ACL version 5.0.1 but it won't work in ACL 6.0 or newer versions of ACL.

The latest development release of cl-http is found in The version in this dirctory is updated often and if the released version is old it's best to use this development version (although you must keep in mind that it hasn't been tested as well as the released version). The development version runs in ACL 5.0.1, ACL 6.0, ACL 6.1 and ACL 6.2.

How to install

  1. First you need a copy of ACL 5.0.1 or newer on your machine.

  2. Next grab the source from one of the two source directories mentioned above.

  3. Extract that source distribution. You will see a directory named cl-http-70-32 (or a similar name if the version number has changed).

  4. Move into that directory and you'll see a directory for each port of cl-http as well as other files and directories. If there is an acl501 directory then move into acl501. Otherwise there will be an acl/jkf directory and you should move into that directory. 

How to build

Start lisp and load the file "start.lisp" and it will compile and load cl-http, start cl-http running on port 8000 and then load in the example files. At this point you direct a web browser to view http://your-machine-name:8000/ and it will display the cl-http intro page.

The file -read-me-.text describes the building and loading process in more detail and shows how you can create a single fasl file that contains all of cl-http.


If you notice strange behavior in the Allegro CL port of cl-http that appears to be specific to the port, please let us know at (make sure that the subject line mentions cl-http).


We would like to know if you are using our port, and what your experience is in using it. Please send you comments to


Many thanks to the  Allegro CL customers who have worked to make previous versions of Allegro CL work with cl-http.


This port was developed independently of the M.I.T. Artificial Intelligence Laboratory.

Copyright © 2020 Franz Inc., All Rights Reserved | Privacy Statement Twitter Google+