AllegroServe, a web server written in Common Lisp

91
2
10 days
(github.com)
by Tomte

Comments

guenthert
10 days

How does it compare (feature-wise, performance, stability) with e.g. hunchentoot (which clearly wins the naming contest)?

jinwoo68
10 days

I think this runs only with Allegro Common Lisp, a commercial implementation.

agambrahma
10 days

Not really, you can run this under SBCL too.

guenthert
10 days

I need another hint. The sources seem to depend on Allegro specifics, e.g. the :excl package (with the enlightening description "General extensions to Common Lisp").

mikelevins
10 days

You can load :aserve from qucklisp to get a portable fork of AllegroServe that works with sbcl (or at least it appears to at first glance on my copy of SBCL 2.2.6).

The README distributed with the library offers a little guidance to getting started.

sanxiyn
10 days

Yes, AllegroServe is Allegro specific, but there is Portable AllegroServe: http://portableaserve.sourceforge.net/

It's the same situation as OpenSSH. OpenSSH only runs on OpenBSD, and Portable OpenSSH is maintained separately.

ur-whale
10 days

Five message into the comments and the discussion devolves into compatibility issues between various versions of common lisp.

Welcome to CL hell.

nerdponx
10 days

But the conclusion is "yes, there is a portable version", which is pretty amazing considering how many implementations there are!

vindarel
8 days

A google search would point you towards Hunchentoot, and https://github.com/CodyReichert/awesome-cl to a couple choices.

smegsicle
9 days

portable common lisp hasn't changed since 1994

zdav24
10 days

I'd also be interested in a feature comparison against Swish (https://github.com/becls/swish), but I'm not actually familiar enough with either to make the comparison myself.

nerdponx
10 days

Seems like an unrelated domain; AllegroServe is a web server, Swish looks like a lower-level Erlang-like framework for writing concurrent, fault-tolerant programs. Swish looks very interesting though!

I'd be interested in comparisons with Clack, though, the "other" Common Lisp web framework.

remexre
10 days

> We've recently added these features:

> [...]

> - Security up through TLS 1.0 (SSL 3.1).

uhhhhhhhh, isn't this removed from Firefox for having security holes fixed in later versions of the TLS spec?

fiddlerwoaroof
10 days

That line is about twelve years old, per git blame. Typically, I’d use a reverse proxy to handle HTTPS anyways.

nerdponx
10 days

I would almost prefer a web framework that doesn't even bother trying to handle things like HTTPS and assumes that I'm using a reverse proxy in front of it. Fewer things to maintain.

lf-non
10 days

Is this generally true for compiled languages ?

I like being able to handle https in a single go binary for small projects that otherwise don't need a load balancer etc.

fiddlerwoaroof
9 days

I don't trust random web frameworks to implement HTTPS correctly and there are lots of subtle attacks on cryptography.