[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Santa has come early


Subject: Re: [xsl] Santa has come early
From: "Dimitre Novatchev" <dnovatchev@xxxxxxxxx>
Date: Fri, 21 Dec 2007 07:40:13 -0800

Congratulations, Colin,

and thanks for the nice XMas present.

> it is a very good performance indeed (and about 1600 times faster than
> Altova on selected stylesheets (on many Altova doesn't finish at all...)).

Keep up the good work. I will find time to run all FXSL tests with Gestalt 1.0.


-- 
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play



On Dec 21, 2007 6:17 AM, Abel Braaksma <abel.online@xxxxxxxxx> wrote:
> Thanks Santa for you present!
>
> In lieu of today's (tonight's, depending where you live) discussion
> about performance measurement, which is, as you pointed out, far from
> trivial, I found the fast startup time of your Gestalt processor
> remarkable. Your PE executable (yes, I use Windows) has a startup time
> on my system of way below 0.1 seconds. Which compares to Saxon + JVM
> which takes about 0.56 seconds to startup.
>
> Yet on larger input it failed (but in all honesty, that "larger input"
> processing XSLT was optimized with Saxon in mind), from the earlier
> thread, same link on EE:
> http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/XSLT/Q_22850559.html,
> Gestalt proofs roughly 2.8x slower. But I don't think it is fair to
> compare a 1.0 version to a 9.0 version and neither is it fair to compare
> based on one run with one stylesheet and one input doc, though I believe
> it is a very good performance indeed (and about 1600 times faster than
> Altova on selected stylesheets (on many Altova doesn't finish at all...)).
>
> Anyway, enough about performance. I noticed a few little things after
> running a couple of tests, that you may want to know about:
>
>  1. With the experts-exchange stylesheet it makes the uppercase root
> tag a lowercase root tag on output (it is an uppercase LRE in the XSLT
> source)
>  2. The fizzbuzz stylesheet (see below) doesn't run at all, though I
> believe it is a valid stylesheet. It errors out with:
>
>      TODO: {XM_XPATH_TOKEN_ITERATOR}.another needs to be written
>      Call on Void target!
>      Unhandled exception
>
>  3. I didn't find a way to run a stylesheet with no input document, but
> with an initial template. Is this possible in a way?
>
>  4. The version number output with --version is "3.7", though the
> software is shipped as "1.0". Which should it be?
>
>
> If you'd like to have more input, I can run a couple of more tests.
> Should I post any findings here or do you rather have them on the
> Gestalt list?
>
> Thanks again Santa! I now know how to spend the "dark days" ;)
>
> Cheers,
> -- Abel Braaksma
>
>
> PS: the fizzbuzz code:
>
>    <?xml version="1.0" encoding="UTF-8"?>
>    <xsl:stylesheet
>        xmlns:xs = "http://www.w3.org/2001/XMLSchema"
>        xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
>
>        <xsl:output indent="yes" />
>        <xsl:variable name="input">
>            <fizzbuzz>
>                <range>1-200</range>
>                <test>
>                    <mod value="3" test="0">Fizz</mod>
>                    <mod value="5" test="0">Buzz</mod>
>                </test>
>            </fizzbuzz>
>        </xsl:variable>
>
>        <xsl:template match="/">
>            <xsl:apply-templates select="$input/*" />
>        </xsl:template>
>
>        <xsl:template match="fizzbuzz">
>            <xsl:value-of separator="&#10;"
>                select="
>                    for $i in range/xs:integer(tokenize(., '\D')[1])
>                    to range/xs:integer(tokenize(., '\D')[last()])
>                    return ((string-join(test/mod[$i mod @value =
> @test], ''))[.], $i)[1]" />
>
>        </xsl:template>
>
>
>    </xsl:stylesheet>
>
>
>
>
>
> Colin Adams wrote:
> > Gestalt 1.0 was supposed to be released on Christmas Day, but Santa
> > Claus seems to have decided that there was no point in waiting any
> > longer.
> >
> > Release notes, documentation, and 32-bit executables for Linux and
> > Windows NT are available from:
> >
> > http://sourceforge.net/project/showfiles.php?group_id=124274
> >
> > Merry Christmas everybody.


Current Thread
Keywords