[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Refreshed genx.h, plus some plans
On Sat, Jan 24, 2004 at 02:18:42PM -0500, Elliotte Rusty Harold wrote: > At 10:19 AM -0800 1/24/04, Tim Bray wrote: > >It dawned on me that with all the checking and so on, genx might not > >be as fast as it could possibly be. The way to fix this is obvious, > >but it might amount to premature optimization. The idea is that you > >predeclare your elements and attributes and get handles to them, so > >that they only need to be namechecked and sorted once. > > Definitely premature. I strongly disagree. Tim's intent may be to add genxDeclareElement / genxFastStartElement as a speed optimization, but I would use it to write more expressive code. For example: #define XSL_NAMESPACE "http://www.w3.org/1999/XSL/Transform" #define XHTML_NAMESPACE "http://www.w3.org/1999/xhtml" genxElement xsl_template = genxDeclareElement(w, XSL_NAMESPACE, "template"); genxElement xhtml_a = genxDeclareElement(w, XHTML_NAMESPACE, "a"); ... genxFastStartElement(w, xsl_template); .... genxFastStartElement(w, xhtml_a); genxFastStartAttribute(w, xhtml_href, "http://www.w3.org/"); This abstraction increases the expressivity of genx. If it also happens to be a speed enhancement, that's a nice secondary benefit. (I dislike the 'genxFast' prefix, but don't have a suggestion for an alternative.) Z.
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|