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" <[email protected]>
> To: "Stephen Colebourne" <[email protected]>, "core-libs-dev"
> <[email protected]>
> 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 <[email protected]> on behalf of Stephen
> Colebourne <[email protected]>
> Date: Friday, September 5, 2025 at 12:13 AM
> To: core-libs-dev <[email protected]>
> 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