[dmd-internals] 5th Biweekly Sprint Planning​

Andrei Alexandrescu via dmd-internals dmd-internals at puremagic.com
Wed Sep 9 11:15:48 PDT 2015


Thanks, Martin!

Somewhat unrelated to this release, I have a question on this topic:

> Unfortunately fixing the template instantiation introduced 2 new
> regressions with 2.068.1 (already fixed by now), one of which is severe
> enough to require a 2.068.2 follow-up.

I haven't followed this very closely so please correct me if my 
perception is wrong. It seems that template instantiations has been 
fixed many times over the past many months (perhaps a year's time) and 
every time it was, new regressions were introduced that in turn needed 
more fixes.

I don't know how templates instantiation is currently implemented, but I 
can recognize the pattern because I've seen it (sadly) many times: it's 
the sign of a design that got to a catastrophic failure stage, in which 
the rate of defects outpaces the rate of patching and fixing them.

It seems to me it's time for a complete rethinking/redesign of template 
instantiation. A design that's comprehensible and robust and solves our 
perennial problems naturally (bloated object files, unnecessary work 
leading to slow compiles, linking issues, etc). What are the core 
compiler folks' thoughts on making this a priority?


Thanks,

Andrei


More information about the dmd-internals mailing list