How can we make it easier to experiment with the compiler

Ola Fosheim Grostad ola.fosheim.grostad at gmail.com
Tue May 25 14:01:25 UTC 2021


On Tuesday, 25 May 2021 at 13:33:25 UTC, zjh wrote:
> On Tuesday, 25 May 2021 at 13:28:02 UTC, zjh wrote:
>> +10086.
>
> Refactoring doesn't take much time.
> Because the function has been realized. Refactoring has great 
> benefits. Clearly hierarchy, Clearly dependence and Clearly 
> interface.

It takes time, but it is a necessary part of the life cycle, and 
does not have to be disruptive. It can happen bit by bit as long 
as you have a new design that is clean.

The nice thing is that one can easily detect regressions by 
comparing a dump from the old compiler with a dump the new 
compiler. Do this for all D programs on github and you can feel 
confident that the new compiler has not introduced new errors.

So: you compare new IR translated to old AST from the new 
compiler with the old ast from the old compiler for a D program. 
If they are equal, then the new compiler passed the test.



More information about the Digitalmars-d mailing list