Lambda the Ultimate

inactiveTopic Automatically Restructuring Programs for the Web
started 11/16/2001; 2:27:54 AM - last post 11/16/2001; 2:27:54 AM
Ehud Lamm - Automatically Restructuring Programs for the Web  blueArrow
11/16/2001; 2:27:54 AM (reads: 1458, responses: 0)
Automatically Restructuring Programs for the Web
Paul Graunke, Robert Findler, Shriram Krishnamurthi, Matthias Felleisen. Automatically Restructuring Programs for the Web. Automated Software Engineering 2001.

The construction of interactive server-side Web applications differs substantially from the construction of traditional interactive programs. In contrast, existing Web programming paradigms force programmers to save and re-store control state between user interactions. We present an automated transformation that converts traditional interactive programs into standard CGI programs. This enables reuse of existing software development methodologies. Furthermore, an adaptation of existing programming environ-ments supports the development of Web programs.

The technique is based on three well-known transformations that can be done automatically: conversion to CPS, lambda lifting, and defunctionalization. These partition the the program into separate interactive steps, so computation can halt conveniently between them. Small changes then convert the program into a standard CGI script.

A more casual description can be found in Shriram Krishnamurthi's lecture notes.

Posted to Software-Eng by Ehud Lamm on 11/16/01; 2:29:36 AM