DIP 1025--Dynamic Arrays Only Shrink, Never Grow--Community Review Round 1
Exil
Exil at gmall.com
Mon Nov 11 22:12:44 UTC 2019
On Monday, 11 November 2019 at 21:41:14 UTC, Walter Bright wrote:
>> This is what the dead/alive example is supposed to express.
>> It is still true however that the rationale is not very
>> convincing.
>> The first example indeed doesn't show any benefits of the DIP:
>>
>> ```
>> int[] slice = cast(int*)malloc(10 * int.sizeof)[0 .. 10];
>> slice = slice ~ 1; // now guaranteed to make a copy
>> free(slice.ptr); // Still oops
>> ```
>
> Imagine these 3 lines are spread out over a large code base.
You realize he changed the code right? That is still valid code
that exhibits the same problem even after this DIP gets
integrated into DMD.
>> The following claim in the DIP is also unsubstantiated:
>>
>>> This change is a necessary part of D evolving towards being
>>> memory safe without using
>>> a GC.
>
> Memory safety cannot be achieved without control over who is
> the owner of memory.
So is the GC being removed from D? Is this the ultimate goal?
Cause the convenience of the language that is provided by using a
GC is being removed along with these DIPs. At some point there's
not going to be a reason to the GC because all of its'
conveniences will have been removed at this rate.
More information about the Digitalmars-d
mailing list