[ANN] SISCweb v0.33 - Stateful Scheme framework for J2EE

"Alessandro Colomba" <[email protected]>
Newsgroups gmane.comp.java.sisc.user
Message-ID <[email protected]>
I would like to announce the release of SISCweb v0.33, available at:

   http://siscweb.sourceforge.net/

This is a compatibility release with SISC 1.13, and adds some features
from the 0.4 development branch.

NOTES

This release is ONLY compatible with SISC 1.13 and up. If
compatibility with SISC 1.11 is desired, SISCweb 0.32 should be used
instead.


FEATURES

- A new module siscweb/image provides procedures to send images from
  java.awt.image.RenderedImage objects or from files.

- A new API wraps and "scheme-ifies" all methods on the Request,
  Response, Session and ServletContext objects. This makes it easier
  to access POST data through a scheme input port, or to set the
  response buffer size, or set Java or Scheme session attributes, for
  example.

- A new procedure forward/dynenv/store! can be used in place of the
  @href-p attributes or plain forward/store! when one desires to
  capture the dynamic environment of a closure, e.g. SRFI-39
  parameters. Because SISC 1.13 solves a few serialization bugs, it is
  now possible to use SRFI-39 parameters in place of session
  attributes for tracking state. This is particularly useful in
  event-based programming (e.g. AJAX). See the Counter example code
  (no pun intended).

- Improvements to response writing improve performance for markup,
  graphviz, images.

- Improvements to XML/XHTML output.

- A new (backwards-compatible) API for siscweb/config.

- Updated documentation throughout.

- Some internal refactoring.


FIXES

- Compatible with SISC 1.13.

- Some XML/XHTML fixes.


OVERVIEW

SISCweb is a framework to facilitate writing stateful Scheme web
applications in J2EE environments.


FEATURES

SISCweb features an interactive, REPL-based web application
development style. Developers can write applications interactively,
without ever bouncing the server, and, insofar as it is desirable,
without ever losing application state. (In fact, save for the Java
portion, SISCweb itself is written interactively in a REPL.)

Through the use of continuations, SISCweb does away with the
page-centric execution model typical of web applications. [*] Every
time a response is sent to the browser, the program execution flow is
suspended, to be then resumed from that exact point when the browser
submits a request.

[*] More information can be found in this paper: Christian
Queinnec. "Inverting back the inversion of control or, continuations
versus page-centric programming". Technical Report 7, LIP6. May
2001. (http://www-spi.lip6.fr/~queinnec/Papers/www.ps.gz)


REQUIREMENTS

SISCweb requires a J2EE 1.3 application server and a JDK 1.4 or
later. More detailed information is contained in the INSTALL file.


CREDITS

SISCweb is based on SISC (sisc.sf.net), a Scheme interpreter for the
JVM, and is heavily influenced by other Lisp web frameworks:

 - the PLT web server collection
   (http://download.plt-scheme.org/scheme/docs/html/web-server/)
 - SUnet (http://www.scsh.net/resources/sunet.html)
 - AllegroServe (http://allegroserve.sourceforge.net/)

A couple of initial design decisions were also lifted from Matthias
Radestock's servlet code in the contrib section of the SISC CVS tree.

Also special thanks to Anton van Straaten, Dominique Boucher, Ben
Simon, Dan Muresan and Felix Klock for bug reports, suggestions,
and/or work in support of SISCweb.


CONTRIBUTING, BUG REPORTS

Comments, ideas, and bug reports are welcome at:

   [email protected]

Thank you!
___
Alessandro


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0944&bid$1720&dat1642
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.