[Seaside] Prevayler

Avi Bryant avi@beta4.com
Sun, 17 Mar 2002 11:43:39 -0800 (PST)


On Sun, 17 Mar 2002, Josh Flowers wrote:

> I've ported a slightly modified version of Prevayler (www.prevayler.org)
> to Squeak.  It's an almost completely transparent object persistence
> framework, that should fit well with Seaside (actually I think it will
> fit much better than EOF does).

Cool.  Maybe you can help - I've noted Prevlayer, and been perplexed by
it, a number of times.  Is the idea actually that you encapsulate every
action you might perform on your business objects in these Command
classes?  That seems extremely heavyweight to me, and hardly transparent.
What am I missing?  I'd really like someone to give me an example of using
Prevlayer in a real-world situation, because it's becoming quite a
prevalent meme, but I clearly don't quite get it.

I've thought somewhat about whether a similar, but much lighter weight
approach might work in smalltalk - something like a distributed object
system, but where every remote method call gets timestamped and logged,
and where objects continually migrate to the server side.  Unfortunately,
this gets hung up on not being able to handle things like blocks being
passed in as arguments, which is a pretty severe restriction.

At the least, couldn't Commands be methods on a subclass of Prevlayer rather
than full classes?  I still don't like funnelling everything through a
single object but that would feel a little more natural.

Cheers,
Avi