Michael Kay

Results 827 comments of Michael Kay

The difference is that providing position() in a map filter expression is achieved by removing a restriction; providing it in the map:filter function is achieved by adding a feature. Orthogonal...

>It’s an assertion (no fact) that positional access in map functions is “un-needed”. In general, it can indeed be helpful to enumerate data even if it has no defined order....

"content" does seem a better name than "values". The current name "values" suggests that it simply returns the values that are already present, without any hint of a flattening operation.

>A minor one: The modifier for lookups should be in singular form, analagous to node axes: item, key, value, pair. I'm fine with that. >introduce member for arrays >only allow...

>I would suggest dropping `array:members` and `array:of-members`. The main benefit of these functions is probably as primitives that can be used to define the semantics of all the other functions...

Indeed, the two function pairs `array:split/join` and `array:members/of-members` differ only in the way that they represent a "parcel", that is, the way they package a sequence as a single item....

Actually, I'm a bit confused about the spec of array:split. What is the result of `array:split([ (1,2), (3,4) ])`? The notes say > The function call array:split($array) produces the same...

(a) How does this affect function items created using named function references, or partial function application? (b) What is the effect on the type system, especially function item types and...

And the other problem (already raised repeatedly) with keyword parameters on dynamic function calls is, how does the caller know what keywords are available? There needs to be some mechanism...

Examples. 1. Given a function declaration `declare f($a, $b := 3)` what do f#1 and f#2 return? Do both return function items with fixed arity? Is there some way of...