Sorry for a long post and for abusing the language.
I know that XQuery is a side-effect free language. Unfortunately,
trying to express some of course side-effect full :( workflow diagrams,
I have to avoid that feature.
I have to ensure that functions F1...FN will execute and will execute in proper order. So my document looks like:
$v1 := F1(...),
$v2 := F2(...),
$v3 := F3($v2),
$v4 := F4()
All the F1...FN function are external Java functions, and so is 'e'
that returns void (without that function, F1 and F4 would not be
called, should they?). For example, F1 and F4 can be used to open and
close a computation session.
My problem is that such documents (that are of course much more
complicated) do not execute well with the latest Saxon-B. With previous
versions everything worked OK.
Are there any advanced optimizations introduced in Saxon-B 8.4? Or is
my idea flawed? Is the sequence of computation guaranteed - that is,
will always $v3 be evaluated before $v4?
Thanks a lot,
The significant problems we face cannot be solved by the same level of thinking that created them.