Re: LISP for web



"R. Mattes" <rm@xxxxxxxxxxxxxx> writes:

> UnCommonWeb is quite nice (i'm using parts of it for my stuff) but you
> should give credit to its parents: the idea of continuation based web
> frameworks is rather old in Scheme circles (IIRC Quenec was one of the
> early proponents). In discussing cont. based frameworks i think it's fair
> to distinguish between Scheme (with its full call/cc support) and Lisp.

[proving once again that common lisp is the borg of programming languages:]

the first paper i've been able to find which deals explicitly with
continuations as web applications is Christian Queinnec's 2000 paper
"The Influence of Browsers on Evaluators or, Continuations to Program
Web Servers" (http://www-spi.lip6.fr/~queinnec/PDF/webcont.pdf). As
far as UCW is concerned Queinnec's book L.i.S.P. was very helpfull in
writing the cps transformer used to fake continuations. Queinnec is a
very smart cookie and writes very readable papers, i would suggest
looking around his site: http://www-spi.lip6.fr/~queinnec/WWW/Queinnec.html

> The framework that kind of triggered the big interest in cont. based web
> programming was most likely SeaSide - a Smalltalk framework (and the
> article "Walking on the Seaside").

SeaSide was, afaik, the first continuation based web framework to
become popular and talked about on the web, though PLT scheme's web
framework was the first.

> Following UCW's development one
> sometimes sees the _limits_ of CL. Marco's framework "fakes" true
> continuations with clever code walkers the rewrite the application code
> into CPS style code.

for what its worth i'm currently working on a small interpreter which,
combined with some of the code from sacla, will raise those limits
substantially (but not remove them completely).

> This is fun when it works but can result in sometimes
> unexpected results. I guess a Schemer might be tempted to say that any
> decent cont. based web framework will end up with a bad implementation of
> call/cc :-)

and they'd be right (see preceding paragraph).

--
-Marco
Ring the bells that still can ring.
Forget the perfect offering.
There is a crack in everything.
That's how the light gets in.
-Leonard Cohen
.



Relevant Pages

  • Re: Scheme vs Lisp! [was Re: web application framework]
    ... is the overarching framework that your Application ... Developers use vs what your Framework Developers use. ... A zillion years ago I considered continuations for web apps, ... multi-threading capability is implemented within their system. ...
    (comp.lang.lisp)
  • Re: Scheme vs Lisp! [was Re: web application framework]
    ... >> handled by my framework. ... > This is the real key. ... > Developers use vs what your Framework Developers use. ... > work" soon eclisped the usefulness of continuations in this case as it was ...
    (comp.lang.lisp)
  • About Continuations continuation
    ... Today I faced a problem with some dangling continuations in the ... Seaside 2.8 port for Dolphin Smalltalk. ... When the process copier copies the stack, ... self continue: stack copy with: anObject ...
    (comp.lang.smalltalk.dolphin)
  • Re: Lambda expressions: Dangerous Madness
    ... functional expression of the GOTO statement, ... special cases such as web programming, use of continuations can result ... In fact, the esoteric programming ... familiar with lambda expressions will have a leg up on the competition ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Just a thought...
    ... Seaside is amazing but Squeak holds it back. ... I love Rails but a Dolphin powered Seaside ... Continuations support in Dolphin is not compatible with the latest ... to continue we are probably going to need to get Blair on board ...
    (comp.lang.smalltalk.dolphin)