For me, 
Map.copyOf() is worst, it is designed to do defensive copy, but you can not use 
it to do a defensive copy because the user of your library may rely on the Map 
iteration order.. 

Rémi 

> From: "Kevin Bourrillion" <kevin.bourrill...@oracle.com>
> To: "Stephen Colebourne" <scolebou...@joda.org>, "core-libs-dev"
> <core-libs-dev@openjdk.org>
> Sent: Friday, September 5, 2025 5:22:47 PM
> Subject: Re: StableValue and non-deterministic iteration order

> Just as a corroborating data point, it’s banned at my previous company too, 
> and
> this is a big reason why. Deterministic iteration is a very good thing.
> (Personal opinion: I’ve come to view non-deterministic iteration as a risky
> optimization in general, that is usually not called for.)

> From: core-libs-dev <core-libs-dev-r...@openjdk.org> on behalf of Stephen
> Colebourne <scolebou...@joda.org>
> Date: Friday, September 5, 2025 at 12:13 AM
> To: core-libs-dev <core-libs-dev@openjdk.org>
> Subject: StableValue and non-deterministic iteration order

> In summary, the current Map.of() is a bit of a hand grenade IMO, and
> something I pretty much banned at my previous company. Which is a
> problem given its key role in StableValue.

> Stephen

Reply via email to