LinkedIn Article to be: Why you need to start moving off C/C++ to D, now.

H. S. Teoh via Digitalmars-d digitalmars-d at puremagic.com
Tue Jul 15 14:09:47 PDT 2014


On Tue, Jul 15, 2014 at 09:03:36PM +0000, Araq via Digitalmars-d wrote:
> >
> >The only way to *really* guarantee 100% predictable memory
> >reclamation is to write your own. Except that we all know how
> >scalable and bug-free that is. Not to mention, when you need to
> >deallocate a large complex data structure, *somebody* has to do the
> >work -- either you do it yourself, or the reference counting
> >implementation, or the GC. No matter how you cut it, it's work that
> >has to be done, and you have to pay for it somehow; the cost isn't
> >going to magically disappear just because you use reference counting
> >(or whatever other scheme you dream up).
> >
> 
> Actually it completely disappears in a copying collector since only
> the live data is copied over ...

Nope, you pay for it during the copy. Read the linked paper, it explains
the duality of tracing and reference-counting. Whether you trace the
references from live objects or from dead objects, the overall
computation is equivalent, and the cost is effectively the same. Once
you've applied the usual optimizations, it's just a matter of time/space
tradeoffs.


T

-- 
Creativity is not an excuse for sloppiness.


More information about the Digitalmars-d mailing list