Web application frameworksin Smalltalk and Common Lisp(Monday 25th of April 2005, Vrije Universiteit Brussel) |
The VUB (Programming Technology Lab), ULB (deComp), Belgian Association for Dynamic Languages (BADL) and the Belgian Smalltalk User Group (BSUG) are very pleased to invite you to two presentations about web application frameworks based on Smalltalk and Common Lisp. The two presenters are the main authors of the respective frameworks and will show you first-hand overviews and illustrate examples from, and experiences with, real-world use scenarios. It will be especially interesting to see what advantages the use of non mainstream dynamic programming languages brings to the table in a domain that is specifically targeted by Java and .NET frameworks. We also expect a heated discussion about the merits of the use of continuations in Seaside and the lack thereof in the Fractal Framework. ;)
The venue for the event is the promotion room of the Vrije Universiteit Brussel, Campus Etterbeek, Pleinlaan 2, 1050 Brussels, Belgium. For a description of how to get to the campus see http://www.vub.ac.be/english/campEt.html . The promotion room is in building D (room D2.01).
|
Abstracts of the TalksSeaside (Avi Bryant)On the web, abstraction is a dirty word. The dominant paradigms and philosophies of web development -- CGI, Servlets, Server Pages, REST-- provide only a thin wrapper around the low-level details of HTTP, and encourage you to use the rough stones of the transport protocol as the direct building blocks of your application. Web developers by and large reject any further abstraction in the way that assembly hackers once rejected structured programming: it's too inflexible, uses too many resources, and above all, it doesn't let you see what's *really* going on. As a result, web applications suffer the same problems now that assembly language programs did years ago; they're fragile, verbose, difficult to maintain and ill-suited to reuse. That's not to say that better abstractions aren't available. The Lisp and Scheme communities have been working on them for years. Paul Graham's ViaWeb pioneered the use of closures, not query parameters, to capture application state in each link. Christian Quiennec showed how to use first class continuations to invert the flow of control of HTTP and put the server back in the driver's seat. Macro packages like htmlgen bring HTML into the language itself, opening up much more than a template system can provide. Meanwhile, object-oriented packages like WebObjects have demonstrated how to decompose the web page into a tree of stateful, interacting objects, allowing a finer granularity of development. Seaside combines these ideas and others with the rich development environment of Smalltalk to provide a stable, complete, and innovative web application platform. This talk will introduce Seaside, and will focus in particular on the ways in which these abstractions can be leveraged to enable reuse: how to use closures, continuations, and intelligent HTML generation to destroy the intra- and inter-page coupling that is holding web development back. BiographyAvi Bryant is the co-founder of Smallthought Systems Inc. Much of his work centers around the use of Squeak Smalltalk as a platform for commercial software development. As an actively contributing member of the Squeak community, he maintains its standard version control system, as well as packages for web development and relational and object database access. As a consultant, he has helped companies develop Squeak-based products for the travel, theatre, and finance industries, higher education, and mobile devices. Avi is based in Vancouver, Canada but currently residing in The Netherlands.
|
Further InformationThe website for Seaside contains information and tutorials to learn more about this framework. Avi Bryant has given a similar presentation at another event, and that presentation was recorded as a quicktime movie. See http://bc.tech.coop/blog/050826.html for the movie and more information. The slides of the talk of Marc Battyani are available here, as well as a document with some more detailed information. |