On Mon, 21 Jul 2003, Dave Rolsky wrote:

> On Mon, 21 Jul 2003, Sam Tregar wrote:
> 
> > I wouldn't be too sure.  I implemented a lot of that stuff to add
> > HTML::Template support to Bricolage and it's still much faster than
> > Mason.
> 
> "A lot" as in _all_ of it, or a "lot" as in autohandlers and dhandlers?

"A lot" as in everything that was needed to get HTML::Template to fill
the role of Mason in Bricolage's publish process.  I'd certainly be a
fool to claim I'd implemented all of Mason!  I doubt I could even list
all the stuff that Mason does.

> In other words, I don't think one could do all of the same stuff, or
> even most, and achieve a huge speed increase.  There would have to
> be something sacrificed.

My impression is that Mason doesn't get much advantage from clients
that only use part of the Mason system.  I imagine that one of the
reasons that the Mason workalike I built for Bricolage is faster than
Mason is that it only implements the functionality actually needed by
Bricolage.  Following this line of thinking it might be possible to
modify Mason to only use/load the slower/bigger pieces when they are
actually needed.  Of course, I'm no authority on why Mason is slow or
how it could be fixed.

I have plans to go a similar route with HTML::Template in the future.
I'd like to build a system that dynamically assembles itself based on
the usage pattern of the program.  That way if the programmer sticks
to the basics they get a smaller, faster system.  If they need the big
guns then the more complete systems can be loaded at some moderate
penalty.

-sam

Reply via email to