Alternative Web App Structures

From BarCamp DC Wiki

Jump to: navigation, search

Presented at Bar Camp D.C., August 11, 2007

Presenter: Brock Wilcox

Applications reviewed:

Seaside: open source web application framework written in Smalltalk.

http://www.seaside.st/

Continutity: "a suite of libraries (not a framework) for building a highly structured web-based interface for your application, without using ad-hoc state management."

http://continuity.tlt42.org/

Notes from the presentation (originally from Matt Bowen's blog):

  • Web App Structure
    • HTTP is stateless
      • Web application programs tend to be stateless
      • Normally, each new requests starts the app from scratch, then you try to get everything back from a session
  • There's an alternative: continuations
    • Instead of the program running to output HTML, halt, start again with a new request (rinse, repeat) ...
    • You freeze the whole context (the state), and then the user does the next step, and the system picks right back up at the point where it left off
      • This is implemented through co-routines


  • Seaside!
    • Written in SmallTalk
      • Uses squeak (an OS in a box, seriously isolated)
    • Application framework (think rails)
    • No templating system -- write your template in smalltalk
    • Offers through the web development
  • Uncommon Web
    • Similar in concept to seaside
    • Use common lisp to handle continuations with a macro
    • Replay the source tree to a specific point
  • Continuity
    • Do this stateful stuff in perl
    • Written by Brock Wilcox, our presenter
    • Uses co-routines
    • "Sorry perl's so ugly, but I love it so much."
    • Big problems with bookmarking. Oh well.
Personal tools