Migrating dmd to D?

Don turnyourkidsintocash at nospam.com
Fri Mar 1 03:45:41 PST 2013


On Thursday, 28 February 2013 at 00:37:50 UTC, Andrei 
Alexandrescu wrote:
> Hello,
>
>
> Walter and I have had a long conversation about the next 
> radical thing to do to improve D's standing. Like others in 
> this community, we believe it's a good time to consider 
> bootstrapping the compiler. Having the D compiler written in D 
> has quite a few advantages, among which taking advantages of 
> D's features and having a large codebase that would be its own 
> test harness.
>
> By this we'd like to initiate a dialog about how this large 
> project can be initiated and driven through completion. Our 
> initial basic ideas are:
>
> 1. Implement the dtoh standalone program that takes a D module 
> and generates its corresponding C++ header.
>
> 2. Use dtoh to initiate and conduct an incremental port of the 
> compiler. At given points throughout the code D code will 
> coexist and link with C++ code.
>
> 3. At a point in the future the last C++ module will be 
> replaced with a D module. Going forward there will be no more 
> need for a C++ compiler to build the compiler (except as a 
> bootstrapping test).
>
> It is essential that we get support from the larger community 
> for this. This is a large project that should enjoy strong 
> leadership apart from Walter himself (as he is busy with 
> dynamic library support which is strategic) and robust 
> participation from many of us.
>
> Please chime in with ideas on how to make this happen.

This would be a huge step forward, I'm sure all of us who have 
made significant contributions to the compiler are frustrated by 
the many things that are difficult in C++ but would be easy in D.

But in my view, before step 2 can happen, we need to clean up the 
glue layer.
Once we have an isolated, clearly defined front-end that is 
shared between dmd, gdc and ldc, we can start converting it.


More information about the Digitalmars-d mailing list