[Bug 26328] [XSLT30] Streamable and non-streamable accumulators in grounded postures

https://www.w3.org/Bugs/Public/show_bug.cgi?id=26328

--- Comment #7 from Michael Kay <mike@saxonica.com> ---
Discussed extensively during today's telcon, but without coming to a
conclusion. The rules proposed in comment #6 appear excessively complicated.
They could be simplified by not allowing use in conditional instructions, but
this would be rather restrictive. Could we have a simpler rule that is
decidable statically, even if it is more restrictive? It was felt that a
simpler rule would be desirable so long as users have a workaround for how to
handle all reasonable cases, e.g. by binding the accumulator value to a
variable.

MK pointed out that what we are essentially doing is saying that acc-before
must come "before" the descent, and acc-after must come "after", and we are
defining some rules that amount to defining a partial order of execution; at
least to the extent that we say "an implementation must deliver the same
results as if the order of execution satisfied the following constraints". (The
main constraint being that sequence constructors are evaluated left-to-right,
but also some constraints on conditional instructions.)

ABr suggested we could reduce the complexity of the rules by half if we don't
constrain accumulator-before (which requires implementations to "remember" the
accumulator-before value on a stack, in case it's needed during the
post-descent phase.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Thursday, 21 August 2014 17:24:12 UTC