--On Tuesday, January 25, 2000, 9:13 PM -0500 Stephen Pair <[EMAIL PROTECTED]>
wrote:
[snip]
> We are looking into a number of alternatives. As for "scalability," it
> depends on your definition. Reading and writing directly to the file
> system (or better yet, a raw partition) is just about as fast as you can
> get...providing you do it in a reasonably intelligent way. Where the
> scalability of using files breaks down is in the dimension of complexity.
I'd guess it also breaks down with sufficent multiple access, since Squeak
(last I knew) can only handle so many simultaneously open files. Or
something.
> When I think of scalability, I think terms of three different dimensions:
[snipped a good list]
> In the absence of a more fundamental approach to object persistence
> (including scalability of image capacity (distributed objects and GC) and
> performance (SMP support)), an object externalization framework is needed.
There sorta already is one, I think. If I understand what you mean.
> In addition to the externalization framework, various mapping frameworks
> need to plug into the externalization framework (OO-Relational, OO-XML,
> OO-Whatever)
But it only supports the "standard" serialization format. I'd love to see
it go pluggable (so image segmants, for example, could be stored as XML
files).
>...AND...to bring all this stuff together, to coordinate
> multiple levels of syncronization...a transaction service is needed.
Ooookay.
> It's a lot of stuff.
Yeah. So, when will you have finished 'em? ;)
> I would recommend not using subclassing to specialize the type of storage
> behavior that SwikiPages have.
Just FYI, that's the extant design.
> Instead, I would develop an abstract
> mapper class, with an XML subclass, whose instances can be taught how to
> map certain objects to an XML file (one instance might know how to map a
> SwikiPage to an XML file for example). I would specialize SwikiPages to
> override behavior such as what happens when a page gets edited, viewed,
> rendered, locked, etc.
The pages have very little, at the moment, to do with editing, viewing,
etc. IIRC. SwikiBooks and formatters do that job.
> Right now, I think the use of templates and
> actions really is an alternative to subclassing...it's really more like
> Prototypes (from Self)...which is also a way that I would explore...try
> building SwikiPages by cloning a Prototype object.
I think that SwikiPage the object in the image, and SwikiPage the thing you
browse and edit are rather different things, and shouldn't be confused
(though it's easy to do!)
> Speaking of XML, I've starting looking into the XML parser. Was TGen used
> to generate it?
No. Bolot hand rolled it.
> I've started typing the XML EBNF into TGen directly from
> the W3C spec. Has anyone already done this? I'm hoping that I'll be able
> to get TGen to generate a parser that implements the full spec (TGen is a
> great tool!).
Ooo, ooo, I was thinking about doing that. Do it, do it!
But what are you parsing? DTDs? DTDs, themselves, specify grammars. What
would be cool is to have a T-Gen that understood DTDs :)
Of course, that's only if you want validation.
Cheers,
Bijan Parsia.