Crow-HTTPd Logo

An interactively developed server in Common Lisp

This page, forms and server code may change anytime without interruption; a live SWANK connection can be maintained from Emacs and SLIME to the server, and the system is developed interactively as spare time permits. A particularity of Common Lisp is that it can be used as a scripting language interactively, with wanted modified code blocks reapplied in the live image. These code blocks may be reapplied as compiled bytecode for interpretation (or in this case, using ECL, be recompiled efficiently to C, linked as a dynamic loadable module and reloaded immediately, which typing C-c C-c on a code block in Emacs automates). Incremental, iterative development is possible, with the possibility of later profiling and optimizing by adding type annotations, etc.

Related links

Test form

First name:
Last name:
Box 01Box 02Box 03Box 04Box 05Box 06Box 07Box 08Box 09Box 10

Test form 2 (multipart/form-data)

This test is expected to fail for now.

Client information


Browser request

GET /test HTTP/1.0
Accept-Encoding: x-gzip, gzip, deflate
User-Agent: CCBot/2.0 (
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
If-Modified-Since: Wed, 17 Jan 2018 23:38:36 GMT

Request state information

Method, Path and VHost

GET on "/test" on ""

HEADER variables

if-modified-since = "Wed, 17 Jan 2018 23:38:36 GMT"
accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
user-agent = "CCBot/2.0 ("
accept-encoding = "x-gzip, gzip, deflate"
host = ""

Server information

Crow/0.1.60-f88be27 (Source available here).

HTTP server uptime: 15 days, 21 hours, 15 minutes, 17 seconds

ECL 16.1.2 (NetBSD)

Valid XHTML 1.0 Transitional