Seaside Framework

Seaside Web Application Framework

A Modal Web Framework that implements Web Transactions With Continuations, written in Smalltalk Language. Originally inspired by Web Objects and the work of Paul Graham for the Yahoo Store, it:

is written in Smalltalk Language (originally Squeak Smalltalk)

optionally uses Call With Current Continuation to provide very sophisticated control flow and backtracking support.

Applications built with it include Dabble Db, a spreadsheet-like database, and Pier Cms, a wiki and web Content Management System.

Reading others' code is also a learning activity, since all source code in Seaside Framework is available.

Canadian Smalltalkers Avi Bryant and Julian Fitzell created Seaside in 2001. Community leaders include Lukas Renggli , Philippe Marschall, and Michel Bany. Version 2.8 was released in 2007, and as of 2009, development of version 3.0 continues under Pharo Smalltalk, with ports to other Smalltalks.


Areas I have found useful in my pursuit of Web App Creation Nirvana:

www.root.cz (13 or more sections). As you can see, its written in .cz, but I've learned that when you adapt to the various Smalltalk idioms, the program becomes the documentation.


How does this compare to Ruby On Rails?

Rails is a full web development stack. Seaside doesn't provide data-access mechanisms out of the box, even though Magma (a pure Smalltalk object database for Squeak) seems to be a popular combination. I don't think it would be possible to create sites like Dabble Db in an agile manner using anything but a Modal Web Framework.

There is a port of an early version of Seaside 2 to Ruby, the Borges Framework (borges.rubyforge.org )


There was a colloquium on Seaside at Portland State University on February 20, 2006. Presented by Avi Bryant of Smallthought Systems.


See original on c2.com