Hi Michael,
perhaps it is time to add monads to XPath?
They should solve this issue and all related ones
Best,
Benito
On 05/07/2014 12:58 AM, Michael Kay wrote:
The big problem with a nondeterministic random() function is not defining the
order of execution, but preventing it being optimised out of a loop. For
example, how do we ensure that
$xxx[random() gt 0.5]
doesn't select either all the values or none?
Anyway, we're not planning to do non-determinism. This exercise is about
designing a deterministic way to meet the requirement.
Michael Kay
Saxonica
On 6 May 2014, at 23:48, Michael Sokolov <[email protected]> wrote:
On 5/6/2014 6:41 PM, Michael Kay [email protected] wrote:
My policy on side effects is: all expressions containing side effects are going
to be evaluated in order
I do something like that in Saxon as well. But I don't attempt to define what "in
order" means; for example, the order in which different global variables are
evaluated. Doing this in the spec would be much more problematic.
You don't think it would be reasonable to say something to the effect that the
order in which non-deterministic expressions are evaluated is non-deterministic
(ie implementation-defined)? Certainly it would be reasonable enough in the
case of a random number generator. Although I suppose if you are going to seed
it, you would like the seed to effect the random numbers that are generated.
-Mike
_______________________________________________
[email protected]
http://x-query.com/mailman/listinfo/talk
_______________________________________________
[email protected]
http://x-query.com/mailman/listinfo/talk