Persistent list

Andrei Alexandrescu via Digitalmars-d digitalmars-d at puremagic.com
Mon Nov 16 09:33:13 PST 2015


On 11/16/2015 11:58 AM, Lionello Lunesu wrote:
> On 16/11/15 22:45, Andrei Alexandrescu wrote:
>> On 11/16/2015 08:51 AM, Marc Schütz wrote:
>>> On Monday, 16 November 2015 at 02:26:29 UTC, Andrei Alexandrescu
>>> wrote:
>>>> Yah, I agree with that argument. Probably @mutable is a more
>>>> principled way to go about things.
>>>
>>> Glad to here that. I think the current transitive const system
>>> is really good and shouldn't be watered down beyond necessity.
>>> And a @mutable keyword, too, shouldn't just mean "immutability
>>> or const-ness end here", thus allowing any kind of mutation. What
>>> we actually need for immutable/const refcounting etc. is
>>> _non-observable mutation_, i.e. physical mutability, but without
>>> observable effects outside of the type's implementation (better
>>> yet, restricted to very short parts of it, just like @trusted).
>>
>> The challenge is proving that a mutation is not observable. Got an
>>  attack on that? -- Andrei
>
> Forgive me, I haven't followed the RC discussions closely, so I miss
> a lot of context. Feel free to point me to existing
> threads/articles.

The best place to start for absorbing context is look at the casts in
http://dpaste.dzfl.pl/52a3013efe34, understand the necessity of each,
and figure out how they can be either made legal or (preferably) eliminated.

> If it's RC we want, then @mutable is an axe when what we need is a
> scalpel.

There's more than RC in there.


Andrei




More information about the Digitalmars-d mailing list