acmp again !

Brian Goetz brian.goetz at oracle.com
Thu Feb 21 13:33:06 UTC 2019



> NaN is interesting because it creates another corner case where the == will be surprising if it's implemented has a component wise comparison,
>    value record Box(double value);
>
>    var box = new Box(Double.NaN);
>    box == box   // false
>
> so both semantics are not reflective.

Go re-read the definition of substitutibility, you'll see that indeed it 
is reflexive.  (Even though `==` on double is not.)   So you'll need to 
find another counterexample :)



More information about the valhalla-spec-observers mailing list