bearophile wrote:
Sergey Gromov:
I'd use dot "⋅" and cross "×" products for 3D, union "∪" and
intersection "∩", subset "⊂" and superset "⊃" and their negative forms.
I don't think I'd use anything else.
I just want to note that the whole thread is almost unreadable on the
digitalmars.com/webnews/, because it doesn't digest unicode chars at all. So
adding unicode to D will give problems to show code.
Unrelated to the unicode, but related on those opSubset, opSuperset, etc:
while implementing a set() class with the same API of the Python sets, I have
seen there are the following operators/methods too:
issubset(other)
set <= other
Test whether every element in the set is in other.
set < other
Test whether the set is a true subset of other, that is, set <= other and set != other.
issuperset(other)
set >= other
Test whether every element in other is in the set.
set > other
Test whether the set is a true superset of other, that is, set >= other and set != other.
A full opCmp can't be defined on sets, so I think in D1 we can't overload <= >=
among sets... I think this is a problem has to be solved in D2, because sets are
important enough.
Bye,
bearophile
If the two sets are incomparable, just return NaN... We need an opCmp
that returns a float :)