Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Servlets in CL

35 views
Skip to first unread message

Fernando

unread,
May 10, 2000, 3:00:00 AM5/10/00
to
Hi!

I have to write a few servlets and I'm planning to use CL. I
was wondering if there's some library that encapsulates state
retention, something like Java's HttpSession, available? O:-)

TIA


//-----------------------------------------------
// Fernando Rodriguez Romero
//
// frr at mindless dot com
//------------------------------------------------

David Bakhash

unread,
May 10, 2000, 3:00:00 AM5/10/00
to
hey,

if you're using CL-HTTP, I'm sure that you can use the servlet model
somehow. What kinds of things, specifically, do you want these
servlets to do? i.e. what "state" do you want to save, etc?

dave

David J. Cooper

unread,
May 10, 2000, 3:00:00 AM5/10/00
to
Fernando <spa...@must.die> writes:

> Hi!
>
> I have to write a few servlets and I'm planning to use CL. I
> was wondering if there's some library that encapsulates state
> retention, something like Java's HttpSession, available? O:-)
>
> TIA
>

You might want to have a look at ``gwl'' at http://gwl.sourceforge.net.


-dave

--
David J. Cooper Jr, Chief Engineer Genworks International
dco...@genworks.com 5777 West Maple, Suite 130
(248) 932-2512 (Genworks HQ/voicemail) West Bloomfield, MI 48322-2268
(248) 407-0633 (pager) http://www.genworks.com

Fernando

unread,
May 11, 2000, 3:00:00 AM5/11/00
to
On 10 May 2000 08:00:27 -0400, dco...@genworks.com (David J. Cooper)
wrote:

>You might want to have a look at ``gwl'' at http://gwl.sourceforge.net.

OK :-)

Fernando

unread,
May 11, 2000, 3:00:00 AM5/11/00
to
On 10 May 2000 09:00:15 -0400, David Bakhash <ca...@alum.mit.edu>
wrote:

>hey,
>
>if you're using CL-HTTP, I'm sure that you can use the servlet model

I'm afraid that won't be an option: I'll have to use Apache.

>somehow. What kinds of things, specifically, do you want these
>servlets to do? i.e. what "state" do you want to save, etc?

It must handle a sort of PIM. Basically I need to know who's
the user to show his personalized content. Since not everybody
accepts cookies, I would have encode this info in hidden parameters in
forms or in the links. I was looking for some library that would
encapsulate this thing and do the dirty work for me...

at ncal point verio point com x@x.x tom

unread,
May 11, 2000, 3:00:00 AM5/11/00
to
David Bakhash <ca...@alum.mit.edu> writes:
> if you're using CL-HTTP, I'm sure that you can use the servlet model
> somehow. What kinds of things, specifically, do you want these
> servlets to do? i.e. what "state" do you want to save, etc?

Does CL-HTTP support the mod_jserv or FastCGI APIs? Those might be a
good compromise. A web search returned nothing.

Tom.

Craig Brozefsky

unread,
May 11, 2000, 3:00:00 AM5/11/00
to
Fernando <spa...@must.die> writes:

> On 10 May 2000 09:00:15 -0400, David Bakhash <ca...@alum.mit.edu>
> wrote:
>
> >hey,
> >

> >if you're using CL-HTTP, I'm sure that you can use the servlet model
>

> I'm afraid that won't be an option: I'll have to use Apache.

Then please take a look at IMHO, which uses the Apache JServ module to
provide a lisp servlet interface. IMHO also includes session
management and component based interface construction supporting the
use of templates. It's inspired by WebObjects, which if you're not
familiar with it is simply the best commercial web app environment
around. We intend to one-up it in the near future. IMHO is licensed
under an MIT/X license, so it's Free Software.

http://alpha.onshore.com/lisp-software


> It must handle a sort of PIM. Basically I need to know who's
> the user to show his personalized content. Since not everybody
> accepts cookies, I would have encode this info in hidden parameters in
> forms or in the links. I was looking for some library that would
> encapsulate this thing and do the dirty work for me...

IMHO session management does not rely upon cookies, instead it uses a
session identifier encoded in URLs.

Note: I'm one of the developers for IMHO and UncommonSQL (also at the
URL I gave you) and I work for onShore.

--
Craig Brozefsky <cr...@red-bean.com>
Free Scheme/Lisp Software http://www.red-bean.com/~craig
"Hiding like thieves in the night from life, illusions of
oasis making you look twice. -- Mos Def and Talib Kweli

Fernando

unread,
May 12, 2000, 3:00:00 AM5/12/00
to
On 11 May 2000 08:54:56 -0700, Craig Brozefsky <cr...@red-bean.com>
wrote:

>Fernando <spa...@must.die> writes:
>
>> On 10 May 2000 09:00:15 -0400, David Bakhash <ca...@alum.mit.edu>
>> wrote:
>>
>> >hey,
>> >
>> >if you're using CL-HTTP, I'm sure that you can use the servlet model
>>
>> I'm afraid that won't be an option: I'll have to use Apache.
>
>Then please take a look at IMHO, which uses the Apache JServ module to
>provide a lisp servlet interface. IMHO also includes session
>management and component based interface construction supporting the
>use of templates. It's inspired by WebObjects, which if you're not
>familiar with it is simply the best commercial web app environment
>around. We intend to one-up it in the near future. IMHO is licensed
>under an MIT/X license, so it's Free Software.
>
>http://alpha.onshore.com/lisp-software

Seams _very_ interesting. :-) BTW, the (tutorial)
http://alpha.onshore.com/lisp-software/imho/doc/imho-tutorial.html
gives a 404 error... :-?

Craig Brozefsky

unread,
May 12, 2000, 3:00:00 AM5/12/00
to
Fernando <spa...@must.die> writes:

> Seams _very_ interesting. :-) BTW, the (tutorial)
> http://alpha.onshore.com/lisp-software/imho/doc/imho-tutorial.html
> gives a 404 error... :-?

Oh poo!

It should be available now, just built it.

I would note that the best course of action to getting IMHO and
UncommonSQL running is to snag the latest revisions out of anonymous
CVS. Instructions for doing so are on the home page. The tar and
debian distributions do not work reliably as we severely
underestimated the complexity of their construction an presently do
not have time to work the rest out.

Fernando

unread,
May 12, 2000, 3:00:00 AM5/12/00
to
On 12 May 2000 08:49:45 -0700, Craig Brozefsky <cr...@red-bean.com>
wrote:

>Fernando <spa...@must.die> writes:


>
>> Seams _very_ interesting. :-) BTW, the (tutorial)
>> http://alpha.onshore.com/lisp-software/imho/doc/imho-tutorial.html
>> gives a 404 error... :-?
>
>Oh poo!
>
>It should be available now, just built it.

OK Thanks. :-)

Andrew K. Wolven

unread,
May 15, 2000, 3:00:00 AM5/15/00
to

tom wrote:

> David Bakhash <ca...@alum.mit.edu> writes:
> > if you're using CL-HTTP, I'm sure that you can use the servlet model

> > somehow. What kinds of things, specifically, do you want these
> > servlets to do? i.e. what "state" do you want to save, etc?
>
> Does CL-HTTP support the mod_jserv or FastCGI APIs? Those might be a
> good compromise. A web search returned nothing.
>

I believe IMHO uses JServe. These interfaces are not supported yet under
CL-HTTP (to the best of my knowledge). I would do it myself but I
discovered that it is just as easy to talk HTTP over a socket as it is to
talk fastcgi or other protocol. If you or anyone else can show me a
working httpd.conf file for Apache that shows how to configure mod_fastcgi
to talk to a standalone self-managed application process, then I would be
interested in hacking on an interface.

Andrew K. Wolven

P.S.: Saving state information of clients in a Lisp web server is a
no-brainer. (when to GC is the hard part) I believe you already proposed
the solution: Simply stuff a client-id into emitted anchors and forms.
Don't call it a session, however, or you might be violating some
dickhead's patent. (On that logic, you can't use lisp, because people
patent CL facilities all the time [I am thinking about starting a
bogus-patent web ring for fun, please send your bogus patents to me])

>
> Tom.


Andrew K. Wolven

unread,
May 15, 2000, 3:00:00 AM5/15/00
to

"Andrew K. Wolven" wrote:

I am going to Patent the concept of a bogus-patent web ring

>
> >
> > Tom.


Fernando

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
On Mon, 15 May 2000 11:57:35 -0500, "Andrew K. Wolven"
<awo...@redfernlane.org> wrote:


>P.S.: Saving state information of clients in a Lisp web server is a
>no-brainer. (when to GC is the hard part) I believe you already proposed

Please, enlighten us. O:-) I also have to save some client
related stuff into a database (results of a search, so I can show the
first 10 matches and latter show the rest without repeating the
query), and I'm not sure when to "GC" the temporary tables holding
that info. I was planning to use a chron process to cleanup every
entry older than X minutes... :-?

>the solution: Simply stuff a client-id into emitted anchors and forms.
>Don't call it a session, however, or you might be violating some
>dickhead's patent. (On that logic, you can't use lisp, because people

Is this what Jeff "Dickhead" Bezos patented (saving client-ids
into forms and anchors)??!!! =:-O I guess the real dickheads are at
the patents office then...

>patent CL facilities all the time [I am thinking about starting a
>bogus-patent web ring for fun, please send your bogus patents to me])

Fine, I'll patent the use of ">" for quoting text.

BTW, is there a more appropriate NG for discussing web server
programming? Most of this isn't really Lisp specific, and I'm afraid
I might be boring other readers... O:-)

Philip Lijnzaad

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

Fernando> I also have to save some client
Fernando> related stuff into a database (results of a search, so I can show the
Fernando> first 10 matches and latter show the rest without repeating the
Fernando> query),

Is this really necessary? If your data is (made) local and indexes are good,
chances are that re-running the query is faster ... This is what SRS
(sophisticated format-parser cum indexing system used to interconnect
hundreds of biological 'databases' (read: ascii files) does; see
http://www.lionbio.co.uk/), and it was never any problem. Cheers,

Philip
--
/dev/brain: character special (53/0)
-----------------------------------------------------------------------------
Philip Lijnzaad, lijn...@ebi.ac.uk | European Bioinformatics Institute,rm A2-24
+44 (0)1223 49 4639 | Wellcome Trust Genome Campus, Hinxton
+44 (0)1223 49 4468 (fax) | Cambridgeshire CB10 1SD, GREAT BRITAIN
PGP fingerprint: E1 03 BF 80 94 61 B6 FC 50 3D 1F 64 40 75 FB 53

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

Fernando wrote:

> On Mon, 15 May 2000 11:57:35 -0500, "Andrew K. Wolven"
> <awo...@redfernlane.org> wrote:
>
> >P.S.: Saving state information of clients in a Lisp web server is a
> >no-brainer. (when to GC is the hard part) I believe you already proposed
>

> Please, enlighten us. O:-) I also have to save some client


> related stuff into a database (results of a search, so I can show the

> first 10 matches and latter show the rest without repeating the

> query), and I'm not sure when to "GC" the temporary tables holding
> that info. I was planning to use a chron process to cleanup every
> entry older than X minutes... :-?
>
> >the solution: Simply stuff a client-id into emitted anchors and forms.
> >Don't call it a session, however, or you might be violating some
> >dickhead's patent. (On that logic, you can't use lisp, because people
>
> Is this what Jeff "Dickhead" Bezos patented (saving client-ids
> into forms and anchors)??!!! =:-O I guess the real dickheads are at
> the patents office then...
>
> >patent CL facilities all the time [I am thinking about starting a
> >bogus-patent web ring for fun, please send your bogus patents to me])
>
> Fine, I'll patent the use of ">" for quoting text.
>
> BTW, is there a more appropriate NG for discussing web server
> programming? Most of this isn't really Lisp specific, and I'm afraid
> I might be boring other readers... O:-)
>

Apparently there is not a better place. There used to be the mailing list
www-cl but that was a cl-http mailing list and has since fizzled for political
reasons. Perhaps we should start a mailing list.

let me go to starbucks and get my coffee, and then I will write you on the list
and try to give you some good information on the best way to get started doing
web with lisp.

AKW

back in few

Craig Brozefsky

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
"Andrew K. Wolven" <awo...@redfernlane.org> writes:

> Apparently there is not a better place. There used to be the
> mailing list www-cl but that was a cl-http mailing list and has
> since fizzled for political reasons. Perhaps we should start a
> mailing list.

Taking this as my cue, I setup a list called "lispweb" which is for
discussion of web programming in lisps of various flavors. If you
would like to a subscription please send mail to lispweb-request, or
me.

I will make a seperate announcement for this in the next hour or so.

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

Fernando wrote:

> On Mon, 15 May 2000 11:57:35 -0500, "Andrew K. Wolven"
> <awo...@redfernlane.org> wrote:
>
> >P.S.: Saving state information of clients in a Lisp web server is a
> >no-brainer. (when to GC is the hard part) I believe you already proposed
>
> Please, enlighten us. O:-) I also have to save some client
> related stuff into a database (results of a search, so I can show the
> first 10 matches and latter show the rest without repeating the
> query), and I'm not sure when to "GC" the temporary tables holding
> that info. I was planning to use a chron process to cleanup every
> entry older than X minutes... :-?
>

It would be useful to know what Lisp platforms you intend to use.

If you are dealing with a production web server or a production web-application
server, you are going to have to deal with sockets and threads, which are
platform dependent.

The questions I have seen relate to emission of client [session] specific
content.

To do this easily, you will want a long-lived lisp process that will maintain
state for you. (not CGI)

What is the OS?
What is the Lisp?
Are you wanting to set up a Lisp web server, or are you wanting to set up a
web-application server to be run under a conventional server? (such as under
Apache)

Less critical: what DB do you want to use, and what do you plan to store in it?

Some of the things that Perl/CGI hackers put in a database can actually live as
lisp objects in memory.
You don't need a database unless you really need to store things in tables.

For now go to allegroserve.sourceforge.net and download allegroserve. There is
a file you will find very useful (htmlgen.cl). Htmlgen is the simplest of the
simple in terms of dynamic html generation with common lisp. Even if you plan
to use templates, you will find this macro very useful.

AKW


>
> >the solution: Simply stuff a client-id into emitted anchors and forms.
> >Don't call it a session, however, or you might be violating some
> >dickhead's patent. (On that logic, you can't use lisp, because people
>
> Is this what Jeff "Dickhead" Bezos patented (saving client-ids
> into forms and anchors)??!!! =:-O I guess the real dickheads are at
> the patents office then...
>
> >patent CL facilities all the time [I am thinking about starting a
> >bogus-patent web ring for fun, please send your bogus patents to me])
>
> Fine, I'll patent the use of ">" for quoting text.
>
> BTW, is there a more appropriate NG for discussing web server
> programming? Most of this isn't really Lisp specific, and I'm afraid
> I might be boring other readers... O:-)
>

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

"Andrew K. Wolven" wrote:

HTMLGEN will show you that HTML should have just been lisp in the first place. If
you use emacs or have paren matching turned on in vi, you will never miss an end
tag.

Tim Moore

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
On Tue, 16 May 2000, Andrew K. Wolven wrote:

> Apparently there is not a better place. There used to be the mailing list
> www-cl but that was a cl-http mailing list and has since fizzled for political
> reasons. Perhaps we should start a mailing list.

So what's up with that? Even the cl-http mailing list has been extremely
quiet in the last month. Are people moving away from cl-http? If so,
why?

Tim

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

Tim Moore wrote:

It is simple really, John Mallery, who wrote 95-100% of the core components of
CL-HTTP was intentionally vague about the commercial license. He dragged his feet
in the decision making process on the commercial licensing issue, and failed to
respond to email on this subject.
Basically people got fed up and found other solutions.
Technically, CL-HTTP is a solid server, especially on MCL and Genera. I wouldn't
recommend it for Franz however. It has bugs dealing with the threads on that
platform, and I doubt anyone will actually take the time to fix them. (The people
at Franz apparently felt it is just as easy to write a server, rather than working
the bugs out of CL-HTTP.)
The distribution is also starting to get unwieldy due to size and lack of
defsystem. (there is a defsystem but it is not actually used for the distribution)

AKW

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
To compare anything to they way it works on Genera is cheating.
No there is no freaking defsystem to load CL-HTTP on Franz.
CL-HTTP promptly crashes ACL within 24 hours. CL-HTTP loads nicely on Franz
using one command, It also loads a lot of stuff you don't need. (Therefore you
must write your own build-cl-http command)
Mallery isn't doing anything for the benefit of the Lisp Community itself, and
is only alienating supporters if he thinks I am going to make any customer
cough up more than two hundred bucks for CL-HTTP when Apache is free. If he
wants to have bad blood with Franz, then I am sorry, because I am going to side
with Franz.

Rainer Joswig wrote:

> In article <3921C3B3...@redfernlane.org>, "Andrew K. Wolven"


> <awo...@redfernlane.org> wrote:
>
> > Basically people got fed up and found other solutions.
>

> Seems that *some* people are developing CL-HTTP based
> applications. Others are copying some of its concepts.


>
> > (The people
> > at Franz apparently felt it is just as easy to write a server, rather
> > than working
> > the bugs out of CL-HTTP.)
>

> I know about who this says something...


>
> > The distribution is also starting to get unwieldy due to size and lack of
> > defsystem.
>

> I just compiled/loaded the latest CL-HTTP
> devo on my Powerbook G3 by loading one file, started
> the server with one menu item invocation and got the top server web
> page in Netscape with another menu item invocation. Total time:
> less than one minute. Doesn't sound too complicated to me.


>
> > (there is a defsystem but it is not actually used for the
> > distribution)
>

> CL-HTTP doesn't use a defsystem???
>
> Try "Show System Definition CL-HTTP" on Genera. How do you
> think patches are being maintained? I'm also just doing "Restore
> Distribution" over the net to keep my local sources current.
>
> Load CL-HTTP into MCL and look at the CL-HTTP menu under "Edit CL-HTTP
> System", "Compile CL-HTTP System",
> "Load CL-HTTP System" and "Recompile CL-HTTP system".
>
> In LispWorks browse your systems using the usual facilities
> after loading CL-HTTP. What do you see?


Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
It should also be noted that large chunks of code live only in the platform
dependent directories and is about as organized as a plate of spaghetti.

R. Matthew Emerson

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
"Andrew K. Wolven" <awo...@redfernlane.org> writes:

> CL-HTTP promptly crashes ACL within 24 hours.

there is no question that CL-HTTP in ACL isn't as polished as it is on
MCL, but it doesn't crash within 24 hours, either.

ACL running CL-HTTP is serving www.alu.org, and it's been running
continuously since january 8th. (but nothing very complicated is
going on).

-matt

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

"R. Matthew Emerson" wrote:

Please send me your latest patches.

Thanks,
Andrew K. Wolven


Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
I also should not just expect CL-HTTP to behave wonderfully for debugging
on a Nichimen Mirai-devo image.
I was missing my Lisp machine having everything up in one memory space.
Thus my case for Lisp machine:
Even if the threading or sockets or streams foobars on you, there are
still plenty of options. Genera does not core dump running on an good
ivory[or 36xx] processor with good memory and good disk. The processor is
intelligent and knows how to handle various conditions, traps, flags or
signals and deal. You also have the FEP, which can warm boot the world in
memory. You can probably reboot the machine while running a program on a
Photon board.

Lisp is in a sad, sad state. Even though everybody in the lisp community
knows that this is technology for the worlds salvation, no one will
cooperate. Its all about the cash.

Sun is going to reinvent object-oriented intelligent hardware ignoring the
fact that it has already existed by at least four companies ten years ago.

They are going to reinvent all of Lisp only to years later, discover
through archaeology, that Lisp was there all along.

I think as human beings we do this over and over again. We are so
arrogant as to believe that our ancestors were primitive and that dolphins
are fish.

Seti beams radio signals in to deep space ignoring the fact that the
universe itself is an intelligent signal.

We treat third world countries and people like lesser important human
beings by enforcing export controls.

We force pedestrians into smaller spaces like cattle and make them breathe
carbon monoxide.

The lisp industry waned in the early nineties for no other reason than
humans are stuck in their material existance.

Erik is a stupid viking.

I am going to spend more time learning agrarian practices and less time
trying to convince people in the lisp community that we should be
cooperating.

Thanks,
Andrew K. Wolven

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
Make sure you look at the log and see how many hits your getting.
I am pretty sure that if you try to do any heavy developing it will puke
at least every couple of days.
Could be an ACL501 thing I guess. (or worse: a windows thing) [it was
puking every couple of days on sun too, I believe]

"R. Matthew Emerson" wrote:

> "Andrew K. Wolven" <awo...@redfernlane.org> writes:
>
> > > ACL running CL-HTTP is serving www.alu.org, and it's been running
> > > continuously since january 8th. (but nothing very complicated is
> > > going on).
> > >
> > > -matt
> >

> > Please send me your latest patches.
>

> vanilla cl-http 70-23 includes the fixes.
>
> also, before you start cl-http:
> (setf http:*resolve-ip-addresses* nil)
> (setf acl-socket:*print-hostnames-in-stream* nil)
>
> this prevents CL-HTTP from doing a reverse lookup when it tries to put
> the hostname of the connecting system into the process name string.
>
> previous versions didn't pay attention to http:*resolve-ip-addresses*
> and had a buggy wait function which would cause processes to get
> arrested and stack up.
>
> -matt


Robert Monfera

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

"Andrew K. Wolven" wrote:

> Mallery isn't doing anything for the benefit of the Lisp Community itself,
> and
> is only alienating supporters if he thinks I am going to make any customer
> cough up more than two hundred bucks for CL-HTTP when Apache is free.

If $200 is big money for a web server for your customers, then I don't
envy you, but supposedly your talent can add a lot of value to it (embed
the web server in an application, for example), and help you make decent
money. Or is it that you can't get the clients to pay for anything?

As for the CL-HTTP license, I think that a meaningful commercial license
(maybe along with an alternative, unsupported OS license) would be
preferable, but I don't think it would make a difference for you, as you
are clearly out of your medication.

Robert

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

Rainer Joswig wrote:

> In article <3921DD20...@redfernlane.org>, "Andrew K. Wolven"


> <awo...@redfernlane.org> wrote:
>
> > To compare anything to they way it works on Genera is cheating.
>

> I was talking about MCL and LW also, wasn't I?


>
> > No there is no freaking defsystem to load CL-HTTP on Franz.
>

> On every platform where possible CL-HTTP uses the native
> defsystem. Ask Franz for support, since they are maintaining
> the port to the latest ACL version.
>
> Xanalys is maintaining the LispWorks port. It works there.
> Digitool is maintaining parts of the MCL port it works
> there, too. It should not be to complicated.


>
> > CL-HTTP promptly crashes ACL within 24 hours.
>

> Ask Franz, they are maintaining the port.


>
> > using one command, It also loads a lot of stuff you don't need.
> > (Therefore you
> > must write your own build-cl-http command)
>

> Ask Franz.


>
> > wants to have bad blood with Franz, then I am sorry, because I am going
> > to side
> > with Franz.
>

> See above.
>
> --
> Rainer Joswig, Technical Director, BU Partner,
> ISION Internet AG, Steinhoft 9, 20459 Hamburg, Germany
> Tel: +49 40 3070 2950, Fax: +49 40 3070 2999
> Email: mailto:rainer...@ision.netWWW: http://www.ision.net/

Thanks for your advice. I asked Franz. They gave me Allegroserve for free.


Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to

Rainer Joswig wrote:

> In article <3921EF1F...@redfernlane.org>, "Andrew K. Wolven"


> <awo...@redfernlane.org> wrote:
>
> > Lisp is in a sad, sad state. Even though everybody in the lisp community
> > knows that this is technology for the worlds salvation, no one will
> > cooperate. Its all about the cash.
>

> Maybe when browsing your CL-HTTP documentation you see that
> a lot of people have and are collaborating to make it
> work. There are various contributed subsystems (from
> HTML to XML parsing) and several ports have been done
> by users. I personally are very thankful to these people.
> Many man years have been gone into it.

It referring to JCMA's pocket?

Background info: I am just now getting up to speed with application
development. I am not ashamed of this.

What this means is that if I contributed CL-HTTP, I still could not justify the
cost of the commercial license to my customer, because they expect Dreamweaver
and Apache.
You can chant Lisp all day and the customer doesn't know that you are not using
Perl CGI for their site.
You can't enter competition in an open source market with a price in the
thousands of dollars!
Thats ridiculous! Allegroserve is LGPL!
I am pretty sure that means I can port it to CMUCL if I wish. Thats
competative with Apache.
I don't need ultra high performance streams, because I am doing sites for Joe
Schmo not the prestigious Whitehouse.
Excuse the hell out of me for being confused into thinking that I could
actually contribute to the CL-HTTP project and still be able to afford to run
my contribution!
I understand that you guys are Mallery's friends but please get a clue.

Andrew K. Wolven

unread,
May 16, 2000, 3:00:00 AM5/16/00
to
I better submit my resume.

Rainer Joswig wrote:

> In article <39220B4E...@redfernlane.org>, "Andrew K. Wolven"


> <awo...@redfernlane.org> wrote:
>
> > Thanks for your advice. I asked Franz. They gave me Allegroserve for
> > free.
>

> Minus the price of ACL to be able to run it.
>
> Hey, they even now are using hierarchical packages.
> Seems like they are going to have a Lisp dialect
> of there own.

Rainer Joswig

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
In article <3921C3B3...@redfernlane.org>, "Andrew K. Wolven"

R. Matthew Emerson

unread,
May 17, 2000, 3:00:00 AM5/17/00
to

Rainer Joswig

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
In article <3921DD20...@redfernlane.org>, "Andrew K. Wolven"
<awo...@redfernlane.org> wrote:

> To compare anything to they way it works on Genera is cheating.

I was talking about MCL and LW also, wasn't I?

> No there is no freaking defsystem to load CL-HTTP on Franz.

On every platform where possible CL-HTTP uses the native
defsystem. Ask Franz for support, since they are maintaining
the port to the latest ACL version.

Xanalys is maintaining the LispWorks port. It works there.
Digitool is maintaining parts of the MCL port it works
there, too. It should not be to complicated.

> CL-HTTP promptly crashes ACL within 24 hours.

Ask Franz, they are maintaining the port.

> using one command, It also loads a lot of stuff you don't need.
> (Therefore you
> must write your own build-cl-http command)

Ask Franz.

> wants to have bad blood with Franz, then I am sorry, because I am going
> to side
> with Franz.

See above.

--

Rainer Joswig

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
In article <3921EF1F...@redfernlane.org>, "Andrew K. Wolven"
<awo...@redfernlane.org> wrote:

> Lisp is in a sad, sad state. Even though everybody in the lisp community
> knows that this is technology for the worlds salvation, no one will
> cooperate. Its all about the cash.

Maybe when browsing your CL-HTTP documentation you see that
a lot of people have and are collaborating to make it
work. There are various contributed subsystems (from
HTML to XML parsing) and several ports have been done
by users. I personally are very thankful to these people.
Many man years have been gone into it.

--

Rainer Joswig

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
In article <3921DEE3...@redfernlane.org>, "Andrew K. Wolven"
<awo...@redfernlane.org> wrote:

> It should also be noted that large chunks of code live only in the
> platform
> dependent directories and is about as organized as a plate of spaghetti.

Platform maintainers can reduce the amount of code duplication
- just see how little changes are necessary for the LispWorks port.
Read "http:lw;server;sysdcl.lisp" for the system
declarations for the LispWorks port.

Rainer Joswig

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
In article <39220B4E...@redfernlane.org>, "Andrew K. Wolven"
<awo...@redfernlane.org> wrote:

> Thanks for your advice. I asked Franz. They gave me Allegroserve for
> free.

Minus the price of ACL to be able to run it.

Hey, they even now are using hierarchical packages.
Seems like they are going to have a Lisp dialect
of there own.

--

Will Hartung

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
Andrew K. Wolven wrote in message <392211D4...@redfernlane.org>...

>What this means is that if I contributed CL-HTTP, I still could not justify
the
>cost of the commercial license to my customer, because they expect
Dreamweaver
>and Apache.
>You can chant Lisp all day and the customer doesn't know that you are not
using
>Perl CGI for their site.
>You can't enter competition in an open source market with a price in the
>thousands of dollars!
>Thats ridiculous! Allegroserve is LGPL!
>I am pretty sure that means I can port it to CMUCL if I wish. Thats
>competative with Apache.
>I don't need ultra high performance streams, because I am doing sites for
Joe
>Schmo not the prestigious Whitehouse.
>Excuse the hell out of me for being confused into thinking that I could
>actually contribute to the CL-HTTP project and still be able to afford to
run
>my contribution!
>I understand that you guys are Mallery's friends but please get a clue.


Preface: This isn't a defense of CL-HTTP, nor an attack of any kind on
Franz. This is simple a reality check for Andrew.

The Allegroserve may perhaps be an LGPL software package, but I can assure
that the ACL core that it relies upon is most certainly not. You can not use
the "free" ACL version for anything beyond simple development. To use it for
anything realistic, anything "commercial", means you need to license ACL
from Franz.

And Franz will want a large amount of money to serve up a commercial web
application. You cannot simply buy a copy and throw it on to your servers
(unless they've changed their terms recently, mind you). In the commercial
world, their prices are NOT unreasonable for Internet servers today, but
they are pretty darn high to Human Beings. (The dark side of their prices
isn't that they're high, it's that they're competitive!)

If the Allegroserve happens to work on other Lisps that may have cheaper
prices, then so be it. However, I'm sure that Franz's focus is in enhancing
their product to make it more enticing to a wider range of people, and the
server infrastructure is a critical piece. Most servers have a very similar
core, and by making that core robust and extensible, Franz adds value for
customers who wish to focus on the application rather than the plumbing.

If Allegroserve is the start of that sort of foundation, then more power to
them. By working on Allegroserve, Franz gets to work on both sides of the
server equation. The application side of interfaces, APIs and services as
well as the "OS" side of the core Lisp image that can be tweaked by Franz to
better support these kinds of servers. Since a lot of server functionality
is in the gray nether regiions not specified in the ANSI standard, Franz
will probably show little restraint in extending their system to meet these
kinds of needs.

I read the license agreement with CL-HTTP, and I didn't see any mention of
$200 anywhere. Seems similar to the muddled license of the past that many
users seem to have issue with.

What's interesting is that probably the worst news to hit something like
Allegroserve and Franz (along with most any other commercial Internet App
server) is Apples recent announcement dropping their WebObjects "unlimited"
deployment version from $50,000 down to $700. In the market, $50,000 was a
competitive (if a bit high) number. Many app server vendors are probably a
bit grumpy right now. WebObjects and Franz would probably hit completely
different markets, but regardless, folks are going to ask "How come theirs
is $700 for development and/or unlimited runtime...and yours isn't?".

Will Hartung
(vft...@home.com)


Andrew K. Wolven

unread,
May 17, 2000, 3:00:00 AM5/17/00
to

Will Hartung wrote:

Complete bullshit. I am just going to do it.
Franz gets their cash by legitimate means. They made me pay for an ACL license,
and now I am looking at the source code to a tiny fast web server (minus
uri.cl). I wouldn't be suprised If I could get this working under CLISP
[without threads].

>
>
> And Franz will want a large amount of money to serve up a commercial web
> application. You cannot simply buy a copy and throw it on to your servers
> (unless they've changed their terms recently, mind you). In the commercial
> world, their prices are NOT unreasonable for Internet servers today, but
> they are pretty darn high to Human Beings. (The dark side of their prices
> isn't that they're high, it's that they're competitive!)
>

I am looking at an email from my Franz salesperson [VAR, runtimes, etc.], and it
seems more reasonable than the rumors I get about CL-HTTP. But that is only if
I choose to use ACL instead of CMUCL or Open Genera for deployment.

>
> If the Allegroserve happens to work on other Lisps that may have cheaper
> prices, then so be it. However, I'm sure that Franz's focus is in enhancing
> their product to make it more enticing to a wider range of people, and the
> server infrastructure is a critical piece. Most servers have a very similar
> core, and by making that core robust and extensible, Franz adds value for
> customers who wish to focus on the application rather than the plumbing.
>
> If Allegroserve is the start of that sort of foundation, then more power to
> them. By working on Allegroserve, Franz gets to work on both sides of the
> server equation. The application side of interfaces, APIs and services as
> well as the "OS" side of the core Lisp image that can be tweaked by Franz to
> better support these kinds of servers. Since a lot of server functionality
> is in the gray nether regiions not specified in the ANSI standard, Franz
> will probably show little restraint in extending their system to meet these
> kinds of needs.

Franz damn well knows that I am going to be knocking at their door as soon as I
get a customer flow. We have maybe two more things to nail down in GWL before
we are going after the Lotus Notes market.

>
>
> I read the license agreement with CL-HTTP, and I didn't see any mention of
> $200 anywhere. Seems similar to the muddled license of the past that many
> users seem to have issue with.
>
> What's interesting is that probably the worst news to hit something like
> Allegroserve and Franz (along with most any other commercial Internet App
> server) is Apples recent announcement dropping their WebObjects "unlimited"
> deployment version from $50,000 down to $700. In the market, $50,000 was a
> competitive (if a bit high) number. Many app server vendors are probably a
> bit grumpy right now. WebObjects and Franz would probably hit completely
> different markets, but regardless, folks are going to ask "How come theirs
> is $700 for development and/or unlimited runtime...and yours isn't?".
>

What do you mean?? GWL is open source. CMUCL will see it for the misers.

They don't call it domino for nothin, and were going to knock it over.

AKW

>
> Will Hartung
> (vft...@home.com)


Andrew K. Wolven

unread,
May 17, 2000, 3:00:00 AM5/17/00
to

"Andrew K. Wolven" wrote:

> Complete bullshit. I am just going to do it. [CMUCL]

In case you want to know about GWL:

Those two things two nail down are:
Persistence methodology atop an RDMS, and
Use of templates for drag and drop interface building. (may just ignore and let
someone else do)

Of course we are going to have to always perfect:
url->lisp translation (well under control)
GC and session management (dependent upon server load)

and add:
online source code editing tools (likely to be java enhanced)
(just in case you don't have emacs)

I think we will be able to iron out this stuff in six months or less, and will very
likely be entirely free except for ACL. We are making it a point ot not be too ACL
dependent. Or server dependent (we plan on supporting CL-HTTP).

Thanks to Franz we have a lot more options to present to out potential customers.

We're going to be recommending things like Allegroserve for Franz and CL-HTTP for
Mac.
(reasonable??)

We still need to be able to have a CL solution to Apache however: LGPL Allegroserve
or custom.

There never would have been an Allegroserve if CL-HTTP hadn't been so aloof.

Craig Brozefsky

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
"Will Hartung" <vft...@home.com> writes:

> What's interesting is that probably the worst news to hit something
> like Allegroserve and Franz (along with most any other commercial
> Internet App server) is Apples recent announcement dropping their
> WebObjects "unlimited" deployment version from $50,000 down to
> $700. In the market, $50,000 was a competitive (if a bit high)
> number. Many app server vendors are probably a bit grumpy right
> now. WebObjects and Franz would probably hit completely different
> markets, but regardless, folks are going to ask "How come theirs is
> $700 for development and/or unlimited runtime...and yours isn't?".

The more remarkable thing is that WO is way ahead of any of it's
competitors, and now it's going to be cheaper by an order of
magnitude. Not only is the web app development toolkit, the WO
Framework, much more cohesive, flexible, and scalable than any of the
competing frameworks, but the database interface, the EOF, is a
friggin' gem as well.

Despite the fact that WO provides solutions for problems that are
several levels above what the competitors are just now addressing (and
failing miserably with the EJB standard), this is still basic
infrastructure for building web apps. I believe it would benefit
Common Lisp quite a bit for this infrastructure to be Free Software,
available to all commercial and non-commercial entities in the lisp
community. This is neccesary to provide the basic level of
functionality needed to deliver internet applications, letting
developers concentrate on solving the problems that CL excels at.

The groundwork has already been done, but there is more work to do,
porting to the various CL runtimes, documenting, and adding
collections of commonly used interface components.

Fernando

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
On Tue, 16 May 2000 12:47:52 -0500, "Andrew K. Wolven"
<awo...@redfernlane.org> wrote:


>> Please, enlighten us. O:-) I also have to save some client
>> related stuff into a database (results of a search, so I can show the
>> first 10 matches and latter show the rest without repeating the
>> query), and I'm not sure when to "GC" the temporary tables holding
>> that info. I was planning to use a chron process to cleanup every
>> entry older than X minutes... :-?
>>
>
>It would be useful to know what Lisp platforms you intend to use.

LispWorks


>What is the OS?

Linux and Apache. I probably won't be able to change this
(Apache).

>Are you wanting to set up a Lisp web server, or are you wanting to set up a
>web-application server to be run under a conventional server? (such as under
>Apache)

The latter.

>Less critical: what DB do you want to use, and what do you plan to store in it?

I'm considering interbase.

>For now go to allegroserve.sourceforge.net and download allegroserve. There is
>a file you will find very useful (htmlgen.cl). Htmlgen is the simplest of the
>simple in terms of dynamic html generation with common lisp. Even if you plan

>to use templates, you will find this macro very useful.

OK, bt is this a http server? What would really interesting
(IMHO) would be an application server for CL....

Fernando

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
On Wed, 17 May 2000 01:33:35 -0500, "Andrew K. Wolven"
<awo...@redfernlane.org> wrote:


>Franz damn well knows that I am going to be knocking at their door as soon as I
>get a customer flow. We have maybe two more things to nail down in GWL before
>we are going after the Lotus Notes market.

Please forgive my ignorance, but...GWL??? :-?

Stig Hemmer

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
Philip Lijnzaad <lijn...@ebi.ac.uk> writes:
> Fernando> first 10 matches and latter show the rest without repeating the
> Fernando> query),
>
> Is this really necessary? If your data is (made) local and indexes are good,
> chances are that re-running the query is faster ...

One problem is that with a dynamic database, rerunning the query can
give you a different result, which will look rather odd.

Stig Hemmer,
Jack of a Few Trades.

Philip Lijnzaad

unread,
May 17, 2000, 3:00:00 AM5/17/00
to

Stig> Philip Lijnzaad <lijn...@ebi.ac.uk> writes:
Fernando> first 10 matches and latter show the rest without repeating the
Fernando> query),
>>
>> Is this really necessary? If your data is (made) local and indexes are good,
>> chances are that re-running the query is faster ...

Stig> One problem is that with a dynamic database, rerunning the query can
Stig> give you a different result, which will look rather odd.

yes, granted. And anyway, even when re-running the query, there is still
client state to be kept track of, namely which window on the (stored or
re-queried) data needs to be served as the 'next page'. But query
results are usually more voluminous than the queries (query strings)
themselves, so at least the amount of state-to-be-stored can be minimized,
and perhaps even access is faster.
Philip
--
/dev/brain: character special (53/0)
-----------------------------------------------------------------------------
Philip Lijnzaad, lijn...@ebi.ac.uk | European Bioinformatics Institute,rm A2-24
+44 (0)1223 49 4639 | Wellcome Trust Genome Campus, Hinxton
+44 (0)1223 49 4468 (fax) | Cambridgeshire CB10 1SD, GREAT BRITAIN
PGP fingerprint: E1 03 BF 80 94 61 B6 FC 50 3D 1F 64 40 75 FB 53

Erik Naggum

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
* Rainer Joswig <rainer...@ision.net>

| Minus the price of ACL to be able to run it.

Geez, _that's_ an intelligent counter-argument. Can you please be
explicit and explain your real beef with Franz Inc?

| Hey, they even now are using hierarchical packages.
| Seems like they are going to have a Lisp dialect
| of there own.

Although I don't necessarily think hierarchical packages is a good
move, they have published the source code necessary to make _any_
Common Lisp get hierarchical packages. It affects a single function
in the Common Lisp package. I'm impressed with your ability to
label this a "dialect", because it clearly suggests supernatural
mental powers.

#:Erik
--
If this is not what you expected, please alter your expectations.

William Deakin

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
Rainer Joswig wrote:

> Hey, they even now are using hierarchical packages.
> Seems like they are going to have a Lisp dialect
> of there own.

Being hard of thinking: what is up with this? Unless this breaks existing
code (which I assume it doesn't) and is not enforced in such a way that have
rather than choose to use hierarchical packages (which again is another
assumption, a something I would probably choose not to use because of
portability issues)...

Best Regards,

:) will


Erik Naggum

unread,
May 17, 2000, 3:00:00 AM5/17/00
to
* Rainer Joswig wrote:
| Hey, they even now are using hierarchical packages. Seems like they
| are going to have a Lisp dialect of there own.

* William Deakin <wi...@pindar.com>


| Being hard of thinking: what is up with this?

It's Rainer Joswig having a personal gripe with Franz Inc, but he
isn't honest enough to come out and state his real issue. From what
I have seen in the past, there isn't _anything_ Franz Inc can do to
appease him, either, so an informed choice is to ignore his noise.

| Unless this breaks existing code (which I assume it doesn't) and is
| not enforced in such a way that have rather than choose to use
| hierarchical packages (which again is another assumption, a
| something I would probably choose not to use because of portability
| issues)...

If you call find-package (or cause it to be called) with a string
designator that starts with a dot, there is no package so named, the
current package contains a dot in its name, there is a package with
the same name up to the dot and the string you gave find-package
from the dot, you will not get nil, but that package. I'm sure this
affects _some_ existing code.

Hierarchical packages have been added to aid in portability. It's
probably more an attempt to cater to the Java crowd, however. I'm
not sure what this will buy the Lisp community, but this is one of
the most innocuous changes I have seen anyone suggest.