On 5/11/2014 1:43 PM, Michel Fortin wrote:
It is a variation on that scheme, but with one significant difference: those two
pointer types can mix and there's no restriction on assignments from one type to
the other. There's therefore no transitive effect and no complicated ownership
rule to understand.

This obviously does not address all your concerns with ARC (which I'll admit
most are valid), but this "ARC isn't memory-safe" argument has to stop. It does
not make sense. One doesn't need to sacrifice memory safety to use ARC, neither
is that sacrifice necessary for having islands of non-ARC code. That's what I
was trying to point out in my previous post.

As long as C++/CX and O-C are brought out here as proven, successful examples for D to emulate here, and there is no acknowledgement that they are not remotely memory safe, I need to continue to point this out.

Rust is memory safe, but is an unproven design.

Your proposal still relies on a GC to provide the memory safety, and has no inherent protection against GC pauses. Your idea has a lot of merit, but it is a hybrid ARC/GC system.

Reply via email to