On Fri, Mar 12, 2021 at 10:40:03AM +0100, Stephen R. van den Berg wrote:
This seems like a bug:
Pike v8.1 release 13 running Hilfe v3.5 (Incremental Pike Frontend)
(<"foo", "bar">) | (<"some", "bar">);
(1) Result: (< /* 3 elements */ "bar", "foo", "some" >)
(<"foo", "bar">) + (<"some", "bar">);
(2) Result: (< /* 4 elements */ "bar", "bar", "foo", "some" >)
Note that the data type's name is *multi*set, so a *set* with *duplicates*. This behaviour is exactly what you should to expect after hearing the name.
https://en.wikipedia.org/wiki/Multiset