- From: <bugzilla@jessica.w3.org>
- Date: Thu, 24 Apr 2014 18:57:46 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=24726
--- Comment #5 from Michael Kay <mike@saxonica.com> ---
The WG looked at this today and agreed that it would be a good idea to try and
find function names that more closely matched the tasks being performed,
however elegant it might appear to have one multi-purpose function. The editor
was asked to produce a proposal.
I'm inclined to go with the following:
(1) To create an empty map, use either map{} or map:merge(()).
(2) map:merge() acts lile the current map:new() - it takes a sequence of maps
and merges them into a single map, resolving duplicate keys.
(3) To add an entry to a map (creating a new map), use map:put($map, $key,
$value). The new entry replaces any existing entry with the same key. This
function works well with the new function chaining operator: map{} =>
map:put("a", 1) => map:put("b", 2) (though of course simple cases like this can
be done equally well with a map expression).
(4) map:entry() which creates a singleton map, can now be dropped. Anyone who
really wants this function can either use map expressions, or implement it as
let $map:entry := map:put(map{}, ?, ?)
So we end up with two functions map:merge() replacing map:new(), and map:put()
replacing map:entry().
--
You are receiving this mail because:
You are the QA Contact for the bug.
Received on Thursday, 24 April 2014 18:57:47 UTC