Potential GSoC project - GC improvements

Adam Wilson via Digitalmars-d digitalmars-d at puremagic.com
Sun Mar 13 18:38:50 PDT 2016


Chris Wright wrote:
> On Sun, 13 Mar 2016 16:34:44 -0700, Adam Wilson wrote:
>> Is this a debate about precise vs. non-precise GC or are we just
>> bikeshedding about terminology and technical details?
>
> You made a large number of assertions about garbage collection and they
> were almost all wrong.
>
> It's not about minutiae -- D can't reasonably have a precise collector,
> and you were saying that nothing else useful can happen before you make
> the GC precise. A non-precise collector can and often should be
> concurrent, and you were saying this was useless.
>
> These are big things. They affect prioritization of major projects.
> Getting them wrong could mislead a GSoC student to the point of not
> accomplishing much when they could have plucked lower-hanging fruit
> successfully.
>

Erm. That seems a bit extreme. You are asserting that D can't have a 
precise garbage collector, yet only have presented one case where the 
compiler cannot provide definitive information about the classification 
of pointer. Unions. Ok, so Unions, a relatively low-usage scenario with 
a valid work-around (assume it's a pointer). We can teach the compiler 
and GC how to pin C-style pointers so that's not it. Lastly, Rainer 
seemed to think a precise GC could be done, and he then went and did it 
... so "can't reasonably have a precise collector" is a factually 
incorrect assertion.

My GC lingo may be rusty, and I will admit to using superlatives 
incorrectly myself, but based on the existing evidence my assertions are 
hardly "almost all wrong". I'll clean up my lingo and retool my language 
if you'll tone down the superlatives.

Of course GSoC students need guidance, I've been a GSoC Mentor for DLang 
before. If I didn't think that a precise GC was not only extremely 
important to D, but also within the ability of the student, I would not 
have pushed for it.

"low-hanging fruit" is the reason D's quality is so spotty. We now have 
a chance with GSoC to get some quality time dedicated to a pain point, 
we should utilize that time to work on foundational issues. Then we (the 
community) can flame each other to death about the best algorithms to 
achieve the performance we desire. That is assuming we haven't scared 
him off.

-- 
// Adam Wilson
// quiet.dlang.dev


More information about the Digitalmars-d mailing list