Value equality (was: Value types questions and comments)
forax at univ-mlv.fr
Mon May 16 18:56:12 UTC 2016
----- Mail original -----
> De: "Brian Goetz" <brian.goetz at oracle.com>
> À: "Kevin Bourrillion" <kevinb at google.com>
> Cc: valhalla-spec-experts at openjdk.java.net
> Envoyé: Lundi 16 Mai 2016 20:20:38
> Objet: Value equality (was: Value types questions and comments)
> Kevin say:
> > However, it would be very sad if it does not solve a second problem at
> > the same time, because it can. Even Java developers who are content
> > with the performance foibles of their existing "value-based classes"
> > are constantly irritated by the burden and bug-prone nature of
> > writing/maintaining such classes.
> We have two choices in front of us regarding equality on value types:
> 1. What does `==` on values do? Choices include a bitwise comparison,
> a componentwise comparision (identical to bitwise unless there are float
> members), or invoking the `equals()` method.
another possible choice is to not allow == on value type (and on a T bound by any),
it makes the semantics far easier to understand, you can only use == on something which fit into a 32/64 bits,
in that case primitive types need to have an equals.
More information about the valhalla-spec-observers