A == B
between types is implemented as A <: B && B <: A
, and I don’t think that Direct <: SubStr
makes it worse? We’d like subtyping to be transitive, or objects with A==B
to be exchangeable when tested with <:
, but failure of that is not a logical error.
But it would be a quite catastrophic logical error if we had a practical distinction between some A
and B
with A === B
.
but maybe split off the parts of discussion that are still ongoing? I don’t feel like the ongoing discussion has gone bad yet.
That is only very slightly related to the 2 year old parts and should have been a new thread instead of necroing the old one.