On Sun, 21 Oct 2001, Jon Smirl wrote:
> There is no need to do a whole rewrite, the layout engine is just hard
> linking to classes where there should be a component interface instead. By
> looking at the SVG branch you can see exactly where the interfaces need to
> be created. Nothing would be changed in the way layout works.

We use too much COM in layout already.  The overhead of virtual function
calls (missed branch predictions, cache misses, etc.) costs at least 5% of
our page load time, probably more like 10% or 15% or perhaps even more.
Are you suggesting we use more COM?  Where?

Furthermore, just turning things into interfaces isn't satisfactory --
those interfaces actually have to work when code that does something
different from what the existing code does is plugged in.  That requires
interfaces that are actually designed for multiple implementations rather
than interfaces that are designed as a not-quite-COM interface to connect
one known class to another known class.  That requires major work in
layout.

-David

-- 
L. David Baron        <URL: http://www.people.fas.harvard.edu/~dbaron/ >

Reply via email to