1. What' New
  2. Features
  3. Information
  4. Selected Applications
  5. Latest Sources
  6. Community
  7. Reference
  8. Calendar
  9. Historical Events
  10. Distributions: Macintosh, Lisp Machine, Windows, UNIX, Other Platforms
  11. Bug Reports

---

Last updated December 17, 2003

  1. What's New
  2. Release 70.190 is now available on the FTP site for most platforms. This includes significant performance improvements, particularly on LispWorks, the Lisp Machine and Macintosh platforms, many new features, and numerous bug fixes.
    Major components include a mature HTTP 1.1 server, a robust caching proxy server, a programmatic client, a constraint-guided Web Walker, a full-text indexation & retrieval, along with a variety of Web-related tools and contributions.
    CL-HTTP has mature, production-quality ports to Microsoft Windows with LispWorks PC and Apple's Mac OS X with LispWorks for Mac OS X, which share the same cross-platform development environment as Lispworks for LINUX & UNIX (all with royality-free runtimes!).
    Completely free systems are available running CMU Common Lisp under FreeBSD & Linux over x86 hardware.


  3. Features
  4. CL-HTTP is a full-featured server for the Internet Hypertext Transfer Protocol (HTTP 1.1, HTML 2.0, HTML 3.2 & pre-HTML 4.0) that comes complete with source code. The server has been proven in major production systems and applied in a number of Artificial Intelligence systems. Some major features of the server include:

    Computed URLs written in Lisp supersede conventional CGI scripts.
    HTML Synthesis for HTML 3.2 & Netscape 4.0 with generation tools.
    Presentation-based Interfaces with W3P.
    Site Indexing & Information Retrieval with LambdaVista
    Implements GET, HEAD, POST, PUT, DELETE, OPTIONS, TRACE methods.
    HTTP 1.1 compliant server, programmatic client, Web walker, & proxy.
    Persistent Connections for the server & the basic client.
    HTTP 1.1 Virtual Hosts sharing a single IP address.
    Access Control via subnets, passwords (Basic & Digest Authentication).
    Java & JavaScript support.
    Client-side plug-in support.
    VRML Synthesis tools.
    Constraint-Guided Web Walker.
    Email Hyperarchive Facility.
    Modular & extensible logging.
    Full featured.
    Web-based configuration of the server & user access control.
    Multi-threaded and dynamically linked.
    Extensible, modular, object-oriented architecture.
    Source compatible over major hardware, operating-system and Lisp platforms.
    Advanced condition handling architecture.
    Self-documenting.
    Working examples to get you started.
    Toolkit of Web abstractions.
    Clean abstractions facilitate security audits.
    Rapid prototyping for research, product or protocol development.
    Used in top research laboratories around the world.
    W4 Constraint-Guided Web Walker.
    Disconnected operation on Apple PowerBooks.
    Proven in major production systems.
    Complete source code.
    Digitally Signed Distributions.
    Free.


  5. Information
  6. WWW-94 Conference Paper: ``Common Lisp Hypermedia Server'' overviews the motivation and architecture of the server.

    Documentation: The distribution comes with more detailed online documentation and examples. The discussion in the listserve archives may be useful. The references page points to general Common Lisp resources and tutorials on the net.

    Questions: If you have questions, send mail to www-cl@ai.mit.edu.

    WWW-95 Conference Paper: ``The Open Meeting: A Web-Based System for Conferencing and Collaboration'' overviews a major application in wide-area collaboration that uses CL-HTTP.

    DOW-96 Conference Papers:


  7. Selected Applications
  8. CL-HTTP If you have a publicly available application using CL-HTTP and you would like it considered for inclusion here, please send a note to www-cl@ai.mit.edu with the URL and a one sentence description. If you have a CL-HTTP-powered Web site, please display the logo.



    Germany
    Episodic Learner Model: The Adaptive Remote Tour (ELM-ART)
    An introductory Lisp Course based on the text materials and some intelligent features (e.g. diagnosis of problem solutions) using a learning environment called ELM-PE.
    Information about German Leasing Business
    A commercial application that exploits dynamic web site capabilities.
    United States
    AgentSheets
    A community site for exchanging simulation components designed by end users.
    AstroCartography
    A 3D virtual reality model of the 45 nearest known star systems with several portals.
    FAQ Finder System
    A research system that answers natural-language questions based on USENET frequently-asked question files.
    Fastus Server
    A research server at SRI International that tags proper names in natural language texts.
    InfoStop
    A commerical site builder for smart citywide directories available for free download.
    Interaction
    Commercial software for creating dynamic social websites that adapt to visitors can be downloaded as free demoware.
    InterBook
    A general tool for authoring and delivering educational adaptive hypermedia on the WWW from Carnegie Mellon University.
    Letizia
    A user interface agent that assists a user browsing from the M.I.T. Media Laboratory.
    Motorola Wafer Fab Browser
    Interfaces a large existing system to the company intranet. No recompilation or rebuild was required.
    Ontosaurus
    A graphical, hyperlinked interface to several Loom knowledge bases at USC's Information Sciences Institute.
    START Natural Language System
    Answers English questions about the M.I.T. Articial Intelligence Laboratory over the Web and email.
    Untangle
    An interface to WWW navigational knowledge based on description logics at Vassar College.
    1996 White House Publications User Survey
    Uses Dynamic Form Processing in support of hierarchical-adaptive surveying generalized over email and the Web. Mobile code is emitted to validate input on the client.
    White House Publications
    Provides a Web interface to a publication system that distributes the daily press releases over the world-wide internet.


  9. Community
  10. A number of people have contributed to the development of CL-HTTP and its port to various Common Lisp platforms. Perhaps you would care to join us doing cool things with the Web and the global information infrastructure.

    Attention: Before sending email to the community mailing list at www-cl@ai.mit.edu, you must subscribe to the listserve first. Otherwise, your email will not reach the group. This measure prevents spammers from polluting the group's mailboxes. Thank you for your forbearance.

    Extensions, Fixes: If you write generally useful extensions or fixes, please send mail to www-cl@ai.mit.edu describing them.

    Learn about new releases, usage, and applications of CL-HTTP as well as general WWW programming with Common Lisp on www-cl@ai.mit.edu.

    Consider Undertaking a Development Project for fun and fame!

    Contributions: If you are contemplating a contribution, please check with www-cl@ai.mit.edu to see if anyone has already done it or whether there are other people who can help. Remember that small contributions add up.


  11. Latest Common Lisp Sources
  12. These sources are the latest development versions and may not be consistent with the current distribution, which can be downloaded below.

    PortableLocation
    Exampleshttp:examples;
    Serverhttp:server;
    W3P Presentation Systemhttp:w3p;
    Proxy Servicehttp:proxy;
    Basic Clienthttp:client;
    LambdaVista Search Toolhttp:lambda-ir;
    W4 Web Walkerhttp:w4;
    HTML Parserhttp:html-parser;
    Email HyperArchivehttp:examples;mail-archive.lisp
    CLIM Interfaceshttp:clim;
    SMTP Mail http:smtp;
    Platform-SpecificLocation
    Allegrohttp:acl;
    Allegro 5.0.1http:acl501;
    CMU CLhttp:cmucl;
    LispWorkshttp:lw;
    Lucidhttp:lcl;
    Macintoshhttp;mcl;
    Symbolicshttp:lispm;
    User-ContributedLocation
    Portablehttp:contrib
    Macintoshhttp;mcl;contrib;
    Allegrohttp:acl;contrib;


  13. Reference
  14. WWW & Lisp References offers pointers related to programming Web applications with dynamic, functional languages.


  15. Calendar

  16. Historical Events
  17. Tutorial on ``Creating Intelligent and Efficient Web Applications with CL-HTTP'' at the European Lisp User Group Meeting, Amsterdam, 1:30-5:30pm, June 9, 1999.
    Tutorial on ``Creating Intelligent Web Applications with Common Lisp Hypermedia Server (CL-HTTP)'' at the 40th Anniversary Conference Lisp in the Mainstream, Berkeley, 1-5pm, November 16, 1998.

    The Lisp Users Group Meeting on February 5, 1997 in Munich, Germany. The meeting is parallel to Object Oriented Programming '97.

    Harvard Conference on the Internet and Society, May 28-31, 1996, Cambridge, Massachusetts.

    Fifth International Conference on the World Wide Web, May 6-10, 1996, Paris, France.

    Tutorial on Dynamic Objects and the World Wide Web during the Dynamic Objects Event at Object World East, May 5-6, 1996, Boston, Massachusetts. The Association of Lisp Users' 1996 Lisp Users & Vendors Conference (LUV96) meets as part of this conference. See the Proceedings of the 1996 Dynamic Objects Workshop

    Futures of Networked Access to the White House: From Public Access Email to Deliberative Knowledge Webs, lunchtime workshop at The 6th Conference on Computers, Freedom, and Privacy, March 27-30, 1996, Cambridge, Massachusetts.

    Workshop on Internet Survey Methodology and Web Demographics January 29-30, 1996, Massachusetts Institute of Technology, Cambridge, MA, USA.

    Fourth International Conference on the World Wide Web, December 11-14, 1995, in Boston, Massachusetts.

    M.I.T. and W3C Workshop on WWW and Collaboration, September 11-12, 1995 in Cambridge, Massachusetts.

    Tutorial on Programming the Web with Common Lisp, at the the 1995 Lisp Users and Vendors Conference at 8am-12 noon, August 16, 1995. in Cambridge, Massachusetts. Contact luv-organizer@ai.sri.com for further information.

    MAC World Boston: There will be a series of demonstrations of CL-HTTP and related technology at 1:30pm each day at the Digitool booth during MAC World Boston, August 8-11, 1995.


  18. Distributions
  19. Latest Release Notes

    Once you get CL-HTTP running, you can peruse the documentation hypertext by accessing the root URL on your host. Normally, you can start from http://your-host.your-domain/. Sometimes on UNIX machines, you may have to run on a port other than 80. In these cases, you would start from http://your-host.your-domain:port-number/.

    CL-HTTP is distributed as source code. For most platforms, it is automatically compiled the first time that you load it. Thereafter, the server loads more quickly because you have a compiled version.

    Digital signatures are associated with each distribution file so that users can independently verify the authenticity of the distribution they receive. These .asc (text) and .sig (macbinary) files are available from the FTP site at ftp://ftp.ai.mit.edu/pub/users/jcma/cl-http/. They were generated with PGP software, which is available from http://www.pgp.com (US) and http://www.pgpi.org (international). The public keys for the signer [John C. Mallery (jcma@ai.mit.edu)] are available from http://pgpkeys.mit.edu:11371 using the PGP key search facility. When copying distributions, be sure to use binary mode so the file remains verifiable.


    Apple Macintosh Version

    LispWorks 4.3
    Martin Simmons (martin@xanalys.com) has a port to Xanalys, LLC's flagship offering in Symbolic Processing for Mac OS X.

    Macintosh Common Lisp
    CL-HTTP runs nicely in Digitool, Inc.'s latest Common Lisp, under either Mac OS Classic or Mac OS X.


    Microsoft Windows Version

    LispWorks
    Martin Simmons (martin@xanalys.com) has a port to Xanalys, LLC's flagship offering in Symbolic Processing for the Windows operating system.

    Allegro Common Lisp
    John Foderaro (jkf@franz.com) has a beta-test port to Franz Inc.'s Common Lisp for Microsoft Windows.


    UNIX Versions

    LispWorks
    Martin Simmons (martin@xanalys.com) has a port to Xanalys, LLC's flagship offering in Symbolic Processing for UNIX operating systems.

    Allegro Common Lisp
    Olivier Clarisse (olivier@ai.mit.edu) has a port to Franz Inc.'s Common Lisp for UNIX operating systems. LINUX.

    John Foderaro (jkf@franz.com) has a beta-test port to Franz Inc.'s Allegro Common Lisp version 6.2 for UNIX operating systems.

    CMU Common Lisp
    Douglas Thomas Crosher (dtc@cmucl.cons.org) has ported CL-HTTP to CMU Common Lisp which runs on the 18b release of CMUCL, and is considered beta-test software when running multi-threaded on Intel X86 hardware under FreeBSD and Linux, and alpha-test on the other ports.

    Liquid Common Lisp
    Gertjan Kersten(gertjan@aie.nl) has an Alphatest port to the Xanalys, LLC's Liquid Lisp for UNIX operating systems. This port has not been supported in recent times. A new portmaster is needed.


    Lisp Machine Version

    Symbolics Common Lisp
    The Symbolics version was used in the early major applications. It is compiled for Open Genera 2.0 (genera 8.5 and 8.4) running under COMPAQ UNIX (OSF 1) on the Alpha as well as Ivory machines under Symbolics Genera 8.3. Users may copy compile the distribution for 36xx class machines. The most advanced CL-HTTP versions and production-tested versions run under Open Genera 2.0 on DEC Alpha hardware.

    :Restore Distribution :Use Disk Yes
     Pathname for dummy tape file:  ftp.ai.mit.edu:/pub/users/jcma/cl-http/lispm.reel-1
    

    The LispM distribution is (5.3 mb) and is digitally signed, [Signature] LispM users may also want to obtain the examples and documentation from ftp://ftp.ai.mit.edu/pub/users/jcma/cl-http/sources.tar.gz (6 mb) [Signature], specifically the directories http directories: examples, www, standards, and contrib.


    Other Common Lisps

    Retrieve the source code distribution and start your port by copying the Macintosh Common Lisp port.

    Source Distribution: ftp://ftp.ai.mit.edu/pub/users/jcma/cl-http/sources.tar.gz (6 mb) [Signature]


  20. Bug Reports
  21. When reporting bugs, it is essential that you explain how to reproduce the problem, provide a backtrace when relevant, and include the server version, the Common Lisp version, operating system version, and hardware configuration.

    If possible, use the sources to fix the problem and send the fix along with the report.

    Report bugs associated with specific ports should go to one of the specialized mailing lists:

    Allegro Common Lisp:Bug-ACL-CL-HTTP@ai.mit.edu
    CMU Common Lisp:Bug-CMUCL-CL-HTTP@ai.mit.edu
    LispWorks Common Lisp:Bug-LW-CL-HTTP@ai.mit.edu
    Lucid Common Lisp:Bug-LCL-CL-HTTP@ai.mit.edu
    Macintosh Common Lisp:Bug-MCL-CL-HTTP@ai.mit.edu
    Symbolics Common Lisp:Bug-CL-HTTP@ai.mit.edu

    Common source or platform independent bugs or issues should be reported to Bug-CL-HTTP@ai.mit.edu.

    Bugs or questions concerning the Constraint Guided Web Walker should be sent to bug-w4@ai.mit.edu.


---

John C. Mallery -- jcma@nospam.ai.mit.edu
M.I.T. Computer Science & Artificial Intelligence Laboratory