Background: I'm looking to write some fully functional webservices in Common Lisp as an April Fools prank on the rest of the development team at my company.

There are two pieces to this: reading info from / writing it to a MySQL database, and receiving / processing / responding to requests over HTTP. (Actually, there's a third piece, writing automated tests, but my QA partner-in-crime is going to handle that part.)

After some Googling I found a good resource here ( http://www.ymeme.com/creating-dynamic-websites-lisp-apache.html ), but I'm surprised that there's seemingly only the one walkthrough. Does anyone know of others, or can anyone share personal experiences with writing webservices in CLisp?

  • I admire the part where you want to learn and use LISP, but the other portion ... what if it does not go as you would have hoped?
    – Job
    Jan 23, 2011 at 4:23
  • 1
    Not sure I follow this - do you mean "what if everyone takes it seriously and I get yelled at for scaring them like that" or "what if I don't get it finished in time"? Also, I should mention I'm already proficient in Lisp, I've just never written a set of webservices in Lisp before.
    – Arkaaito
    Jan 23, 2011 at 7:58

2 Answers 2


Hunchentoot seems a popular choice and, as is normal for Edi Weitz, has loads of good documentation.

Here's a walkthrough of the entire process of setting up a CL-running web server, for the sysadmin side of things.

And Felipe Delgado's been blogging about his UnCommon Web experiences.

(Regrettably I haven't found the time to learn sufficient CL webservice stuff to share my own experiences.)

Update: Hunchentoot is moving/has moved to https://github.com/edicl/hunchentoot


Use the REST standard for developing the Web Service that should be easier in LISP than developing traditional Web services using WSDL.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.