[plt-scheme] web programming, continuation, CPS transform, etc.

From: Jay McCarthy (jay.mccarthy at gmail.com)
Date: Mon Apr 30 17:35:13 EDT 2007

I can comment briefly.

The paper <http://www.ccs.neu.edu/scheme/pubs/icfp05-pcmkf.pdf> has
been implemented, by Greg Pettyjohn. It is available as
`prototype-web-server' in the `graveyard' section of the SVN

I have recently rescued it from bit-rot and wrote a useful application
in the input language it requires. After the next release, I plan on
making that available in the mainline web-server and gradually
improving its coverage of the language. But, I am doing this to
scratch an itch, rather than produce research or bullet-proof


On 4/30/07, Yin-So Chen <yinso.chen at gmail.com> wrote:
> Hi all -
> I ran across the paper
> http://www.ccs.neu.edu/scheme/pubs/ase2001-gfkf.pdf
> (Automatic Restructuring Programs for the Web) and am very intrigued by its
> findings.  I have suspected that a continuation-based web server has
> scalability limitations described by the paper, and the paper for me
> provided the aha answer, until I read a subsequent paper that also talks
> about CPS not being the nirvana (
> http://www.ccs.neu.edu/scheme/pubs/icfp05-pcmkf.pdf).  I am
> still digesting the second paper as it far stretches my theoretical
> knowledge, but I am wondering about the followings:
> 1) Although these paper were published a while ago, it seems that the
> findings have not made their way into PLT web server implementation - is
> that correct?  i.e. I want to confirm that the limitation described in the
> papers still exist in PLT web server (at least as of v360).
> 2) None of these paper actually publish the implementations - I am curious
> if the implementations are available somewhere?  If they are not for
> whatever reasons, I understand, but just want to know if it was my own
> inability to find the source (but definitely interested to study how it's
> done, see #3).
> 3) Are there good links/pointers/implementations on CPS and ANF
> transformation?  I can't find a good description of ANF (my google terms are
> probably wrong).  With CPS I can find techniques from readscheme, but they
> appear more for manual transformation.  For automated transformation it
> seems that the transformer must know scheme well ( i.e. knowledge of if,
> cond, let, etc) and appears very complex, and it also seem like operations
> like map, loop, or error handling are very difficult to transform into CPS.
> 4) Is PLT web server moving toward the paper's findings?  If not, why not?
> 5) I am sure to have many follow-ons, but don't want to overwhelm the list
> with questions ;)
> Thanks,
> yinso
> --
> http://www.yinsochen.com
> ...continuous learning...
> _________________________________________________
>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Jay McCarthy <jay.mccarthy at gmail.com>

Posted on the users mailing list.