Allocator-aware @safe reference counting is still not possible

Richard (Rikki) Andrew Cattermole richard at cattermole.co.nz
Mon Jan 30 17:51:52 UTC 2023


We'll have language changes for helping with this, I can't see us not 
making them if opportunities arise ;) Especially if they are small and 
have multiple use cases.

Now, 1. and 2. I want to differentiate between effectively @safe, and 
actually machine check-able @safe.

I do not believe we will ever have fully machine check able. That means 
significant DFA, we really don't have the required people to design and 
implement this. DIP1000 is a good example of this, since it doesn't 
support indirection with multiple lifetimes being involved in a variable.

Effectively @safe means as much code is machine checked, but we want to 
isolate to library code the unsafe parts, where we ensure those 
guarantees for what we can by auditing instead.

So no I don't think we can have 1/2 without hiring some people, but we 
can get close enough to it with what resources we do have, just by 
telling people to not use something and push them instead to use things 
that do offer it as long you don't do something outright stupid (which 
lets face it, they probably won't be using anything other than the 
default global allocator).


More information about the Digitalmars-d mailing list