DIP60: @nogc attribute

Walter Bright via Digitalmars-d digitalmars-d at puremagic.com
Thu Apr 17 10:09:58 PDT 2014


On 4/17/2014 2:32 AM, Paulo Pinto wrote:
> Similar approach was taken by Microsoft with their C++/CX and COM integration.
>
> So any pure GC basher now uses Apple's example, with a high probability of not
> knowing the technical issues why it came to be like that.

I also wish to reiterate that GC's use of COM with ref counting contains many, 
many escapes where the user "knows" that he can just use a pointer directly 
without dealing with the ref count. This is critical to making ref counting perform.

But the escapes come with a huge risk for memory corruption, i.e. user mistakes.

Also, in C++ COM, relatively few of the data structures a C++ program uses will 
be in COM. But ARC would mean using ref counting for EVERYTHING.

Using ARC for *everything* means slow and bloat, unless Manu's assumption that a 
sufficiently smart compiler could eliminate nearly all of that bloat is possible.

Which I am not nearly as confident of.



More information about the Digitalmars-d mailing list