On 2013-02-28 01:37, 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.

Now this is some great news to wake up to :)

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.

Short term goal:

I agree with what Walter has said in other posts that we need to make a direct translation as possible minimize translation bugs.

Long term goal:

When the translation is done we should refactor the compiler/front end to be a library, usable by other tools.

It would be nice to hear some comments from the GDC and LDC developers.

BTW, there's already a translation of DMD available, DDMD:

http://www.dsource.org/projects/ddmd

But this is a bit outdated. I also don't know how a direct translation this is. I can at least tell that it has a more one-to-one mapping of files and classes than DMD does.

--
/Jacob Carlborg

Reply via email to