RCArray is unsafe
ponce via Digitalmars-d
digitalmars-d at puremagic.com
Wed Mar 4 06:27:10 PST 2015
On Wednesday, 4 March 2015 at 10:50:54 UTC, Walter Bright wrote:
> On 3/4/2015 1:16 AM, bearophile wrote:
>> Walter Bright:
>>> The complexity of a free list doesn't remotely compare to
>>> that of adding an
>>> ownership system.
>> A sound complete ownership system is the only good enough
>> solution for D. That's
>> my opinion.
>
> How do you type an an array of pointers with different owners?
You define a clear owner for everything so that this never
happens.
That's what we do in C++ and shared_ptr is can be avoided as much
as we like.
> How do you deal with the combinatoric explosion of template
> instantiations with all those different ownership types?
What we do in C++: with unsafety. Taking raw pointer in function
parameters and function returns.
Mark in comments assumptions about which lifetime exceed what.
Modern C++ has no such combinatoric explosion. Instead of a
std::vector of pointers, you know have a std::vector of
std::uinque_ptr.
It still is quite easy, in the very least easier that doing
deterministic destructon in D.
More information about the Digitalmars-d
mailing list