dmd 2.068, 2.069, 2.0xx Evil Plan going forward

Tofu Ninja via Digitalmars-d digitalmars-d at puremagic.com
Mon Jul 20 13:52:26 PDT 2015


On Monday, 20 July 2015 at 04:02:04 UTC, Walter Bright wrote:

How is this evil? This seems very good :)

> 2.068 - resolve remaining regressions and release
>
> 2.069 - translate to D. No new features, no refactoring. Only 
> regression fixes and what's already in HEAD. This should give 
> us a solid baseline. It also means that open PRs that address 
> other issues will not be pulled for 2.069.

YAY, I have been wanting to learn how the compiler works for a 
while but have been to lazy and don't want to look at so much 
c++, having to be in D will make diggin into it so much more 
attractive.

Also seems like the compiler as a library is not too far away, is 
that going to be apart of the plan eventually?

> Perhaps we should name this 2.100, to signify such a milestone.

Your the boss, I dont gaf what the version numbers are.

> 2.101+ -
> 1. Take advantage of D features to improve quality.

Again, yay...

> 2. Go to full lazy semantic analysis of imports, rather than 
> the current "analyze them all"

What effects will this have? Faster compile times? Smaller 
binaires?

> 3. Rethink what "speculative instantiation" of templates means 
> so we can have a coherent process of compiling them.

Sounds complicated... what effects will this have? Simpler 
internals? What effects for end user?

> 4. Redo CTFE interpreter so it only rarely needs to allocate 
> memory. This was already done for constant folding, but now 
> it's time for the rest of the interpreter.

Oh god yes

> 5. Get rid of reliance on the global error count. This has been 
> mostly done, it just hast to be finished.

No idea what this is referring to..

> 6. Convert the back end to D as well.

<3

This all seems very not evil.

One question I have, are there any plans for a language clean up 
of sorts, there are a bunch of little features and some big that 
don't really make sense anymore. D is starting to feel like it's 
going down the road of c++ with lots of baggage and unwillingness 
to get rid of old features even if they are discouraged from use, 
all for the sake of backwards compatibility. I know D has been 
getting progressively more reserved about breaking changes, do 
you see that changing any time in the future? 1 year? 3 years? 
Would automatic conversion tools make you more willing to break 
things?



More information about the Digitalmars-d mailing list