[Seaside] Tutorial One

Avi Bryant avi@beta4.com
Sun, 26 May 2002 12:38:06 -0700 (PDT)


On Sun, 26 May 2002, Jim Benson wrote:

> It would be nice to leave this on the Swiki or somewhere so that us
> more challenged folks have a chance to get it.

Good point.  Or just release 0.93.1 with the fix.

> There's a *lot* of magic going on here. That's good. One place I did get
> confused was in the "Getting Fancier: Bindings".  A lot of things get talked
> about, and suddenly the #addBindingsTo: method is introduced. Initially, it
> wasn't quite clear to me where I should place the method. Also, it wasn't
> clear to me when or who sends this message so that it "just works". The
> first can be fixed by saying "Add this method to [classname]", the second
> can be answered with a quick "the binding happens when ... ". Of course, I
> eventually hunted down what was going on, but a couple of extra sentences
> would have cleared it up for me.

Ok, thanks.  The bindings mechanism is actually in flux right now - I
hav an alternative system, implemented but not fully tested, that I think
should be easier for new users to understand.  Perhaps more on that in
another message.

> Another area that I'm having trouble with is the syntax/options of the <
> input .. > command in the templates. I'm not quite sure what all of the
> different options are other than what I've seen in the examples.

Well, actual syntax is very simple:

- normal html tags, plus either a sea:id attribute making them dynamic, or
an attribute with a @ in it (*any* attribute, doesn't matter), which
is used as a sea:id

What's more complicated is what happens from there, ie, what kind of tag
object gets created and how they work.  A look through Seaside-Tags and
Seaside-Tags-Forms (which should have complete class comments) might help
out here.  But yes, some kind of an API reference for elements would be
useful.

> The use of continuations in Seaside is an exemplary use of the power of
> Squeak (OK, it might have been lifted out of Lisp ;-) in this problem
> domain. Kudos !!! The use of S-Expr has a very good feeling to it also as a
> higher level domain language of HTML, though it's clear that some sort of
> editor support is needed to match the parens (an alternative might be some
> sort of domain specific editor).

http://beta4.com/dvs/ParenBlinking.cs

> Has anyone written a Wiki in Seaside yet?

Not that I know of.

Cheers,
Avi