From: Jochen Schmidt
Subject: AllegroServe on LispWorks
Date: 
Message-ID: <9a3rd2$3k2ig$1@ID-22205.news.dfncis.de>
Hi,
I'am over to do a LispWorks -port of AllegroServe. Many parts of the 
codebase are working so far (e.g. the Webclient, HTMLGEN, HTML-Parser)
The Webserver itself works partialy as there are problems with AllegroCLs 
bivalent sockets. With AllegroCLs bivalent sockets you may know it is 
possible to use both text-mode functions (e.g. READ-CHAR) as well as 
binary-mode functions (e.g. READ-BYTE) on the same socket-stream.
This is rather nice when writing protocols like HTTP which are mixing text 
and binary-modes when sending binary-data e.g images.
The problem is that LispWorks (and probably most other CLs too) doesn't 
have such bivalent socket-streams making it difficult to port AllegroCL.

The work I've done so far is rather chaotic so I don't want to make it 
public immediately. I want to make sure that as less as possible is changed 
from the original codebase.

Regards,
Jochen

From: Chris Double
Subject: Re: AllegroServe on LispWorks
Date: 
Message-ID: <wk4rw9h5uh.fsf@double.co.nz>
Jochen Schmidt <···@dataheaven.de> writes:

> I'am over to do a LispWorks -port of AllegroServe.

What did you do for the URI library? I wrote a simple URI library that
implemented what AllegroServe mostly used. It's in my Corman Lisp port
of AllegroServe[1]. I'd be interested if you have a more complete
implementation.

What version of AllegroServe are you porting? I did v1.1.25 but newer
versions are out but they seem to use more ACL specific stuff like
their internationlisation support.

[1] http://www.double.co.nz/cl

Chris.
-- 
http://www.double.co.nz/cl
From: Jochen Schmidt
Subject: Re: AllegroServe on LispWorks
Date: 
Message-ID: <9a83q8$42p3g$1@ID-22205.news.dfncis.de>
Chris Double wrote:

> Jochen Schmidt <···@dataheaven.de> writes:
> 
>> I'am over to do a LispWorks -port of AllegroServe.
> 
> What did you do for the URI library? I wrote a simple URI library that
> implemented what AllegroServe mostly used. It's in my Corman Lisp port
> of AllegroServe[1]. I'd be interested if you have a more complete
> implementation.

I have to admit that I started my port using your port to Corman Lisp.
I implemented some missing parts of your URI-Module such as merge-uris 
enough-uri, uri-parsed-path and (setf uri-parsed-path) and some little 
changes here and there to get a bit more of the code running. The 
merge-uris implementation seems to be compatible enough to get redirections 
working with the AllegroServe-client. The enough-uri is not tested. I've 
furthermore used the ACL-style socket module for LispWorks I found 
somewhere. I hacked in various parts of the AllegroServe sources to get it 
running - so I have to start from an clean package again if I want to do it 
right.

> What version of AllegroServe are you porting? I did v1.1.25 but newer
> versions are out but they seem to use more ACL specific stuff like
> their internationlisation support.

I've simply tried to get your version working as I thought (correctly) that 
you have surely done some generalizations that would make my effort easier.

I think it would be a good idea to join forces to get a more general 
implementation of AllegroServe. An idea would be to make an ACL-COMPAT 
module that implements the necessary ACL things for several Lispsystems 
(such as Corman, LispWorks, CMUCL, CLISP). This module should be able to be 
used without AllegroServe. Another issue we should try to solve is the 
bivalent socket problem. Maybe we could try to run AllegroServe in 
binary-mode, sending the headers as binary data too - this would lead to 
some changes in several parts. What was your solution to that problem (if 
you have solved it)?

Regards,
Jochen
From: Dmitri Ivanov
Subject: Re: AllegroServe on LispWorks
Date: 
Message-ID: <9a94kh$p4m$1@news.aha.ru>
Jochen Schmidt <···@dataheaven.de> wrote in message
···················@ID-22205.news.dfncis.de...
> Hi,
> I'am over to do a LispWorks -port of AllegroServe.

Have you finished with UncommonSQL-ODBC already? :-)
---
Sincerely,
   Dmitri Ivanov
   www.aha.ru/~divanov
From: Jochen Schmidt
Subject: Re: AllegroServe on LispWorks
Date: 
Message-ID: <9a9c6k$46t2l$1@ID-22205.news.dfncis.de>
Dmitri Ivanov wrote:

> Jochen Schmidt <···@dataheaven.de> wrote in message
> ···················@ID-22205.news.dfncis.de...
>> Hi,
>> I'am over to do a LispWorks -port of AllegroServe.
> 
> Have you finished with UncommonSQL-ODBC already? :-)

"finished" is such a final notion ... ;-)
There is a working version downloadable from http://www.dataheaven.de.
This version works with LispWorks and should be able to get running with 
ACL and MCL (by adding the parts of SQL-ODBC).
Since Paul Meurer works on a CMUCL port of SQL-ODBC USQL will allow ODBC 
with CMUCL too in future.

Jochen
http://www.dataheaven.de