What happened to the "mutable struct" debate?

Vitaly Davidovich vitalyd at gmail.com
Fri Jan 23 16:06:18 UTC 2015


Also, here's another thing to consider for mutable structs:

MyStruct[] arr = ...
arr[i].intField = 10;

Vs
MyStruct[] arr = ...
MyStruct s = arr[i];
s.intField = 10;

These wouldn't have the same semantic yet not super obvious to some from
cursory glance (or innocent refactoring).

sent from my phone
On Jan 23, 2015 11:00 AM, "Vitaly Davidovich" <vitalyd at gmail.com> wrote:

> If mutable structs are not allowed to be passed by ref, then one is more
> likely to lose writes as the struct is passed through a method chain.
> There's no *necessity* per say, but the danger zone is expanded.
>
> The by-ref would be useful for immutable structs as well when you want to
> avoid copying costs for a largish struct.
>
> On Fri, Jan 23, 2015 at 10:54 AM, Rezaei, Mohammad A. <
> Mohammad.Rezaei at gs.com> wrote:
>
>> >Very much so.  This is indeed Big Strike #1 against them; this is a new
>> >big complexity that Java (platform and developers) have not had to deal
>> >with.
>> >
>>
>> I don't really see why mutable structs would necessitate pass by
>> reference. Java developers are used to pass by value semantics and there is
>> a well-known, but admittedly ugly pattern for pass by reference (use an
>> array or mutable wrapper).
>>
>> The reference question comes up even in all-final value types. But I'll
>> pose that question in a separate thread.
>>
>> Thanks
>> Moh
>>
>
>


More information about the valhalla-dev mailing list