Re: [xsl] The output of evaluating an XSLT transform is the same regardless of the order in which output elements are evaluated. Right?

Subject: Re: [xsl] The output of evaluating an XSLT transform is the same regardless of the order in which output elements are evaluated. Right?
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Tue, 13 Apr 2010 20:29:17 -0700
Liam,

Special cases like these just prove what I am saying... :)

Yes, there can be parallel and independent evaluation... only this is
not the rule.


Cheers,
Dimitre

On Tue, Apr 13, 2010 at 6:35 PM, Liam R E Quin <liam@xxxxxx> wrote:
> On Tue, 2010-04-13 at 10:12 -0700, Dimitre Novatchev wrote:
>> [...] The evaluation of
>>
>> f(g(x))
>>
>> requires that g(x) be evaluated, before f() B can be evaluated.
>
> If f() takes a sequence as an argument, and g() produces a sequence,
> and each item in the result of f() depends only on the corresponding
> item in g(), then you can decompose f(g(x))
> B  B for $i in g(x) return f($i)
> in other words, evaluating f of g of each item in th sequence in turn.
>
> And given
> function f($input as item*) as item*
> {
> B  B return $nput[1]
> }
> it's not necessary to evaluate g(x) further than necessary to generate
> one single item.
>
>> There are datatypes that (by definition) impose a particular ordering
>> on their processing. Take a list. in order to access the Nth item one
>> needs to get the tail of the list and then acces its N-1st item. The
>> Nth item is the head of the N-1st tail in this processing.
>
> XSLT does not, however, mandate such data structures. It's perfectly
> possible to implement an n-item sequence as an array, such that
> accessing the nth item is O(1) in complexity.
>
>> Also, a child cannot be born before its parents are born.
>
> Given
> B  <a>
> B  B <b>
> B  B  <c />
> B  B </b>
> B  </a>
> as a literal element constructor, an implementation is free to construct
> the result in any order.
>
> The oldest man in the Bible died before his father ;)
>
> Best,
>
> Liam
>
> --
> Liam Quin - XML Activity Lead, W3C, http://www.w3.org/People/Quin/
> Pictures from old books: http://fromoldbooks.org/
> Ankh: irc.sorcery.net irc.gnome.org www.advogato.org
>
>



--
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
-------------------------------------
I enjoy the massacre of ads. This sentence will slaughter ads without
a messy bloodbath.

Current Thread