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/ >
