new frontend written in D

Jonathan M Davis jmdavisProg at gmx.com
Wed Sep 28 10:14:12 PDT 2011


On Wednesday, September 28, 2011 07:45 Gor Gyolchanyan wrote:
> I agree, that rewriting the language is not a good idea until the
> current version is fully studied, so i don't want D3 either. D2 is
> good enough for now.
> But I don't have D2 because most of what makes it unique isn't
> implemented or is buggy. And i still won't have it for a long long
> time (I really want classes in CTFE, for example).

Having a D compiler for D would be cool, but really, does it matter? At least, 
to the average programmer? The average programmer wants a compiler that works. 
Fixing dmd's bugs gets you that. That's what's being done. Rewriting dmd in D 
doesn't help with that at all. In fact it makes it worse, because it's 
inevitable that new bugs will be introduced.

In the long run, it would be nice to have a compiler in D (maybe even the 
primary compiler), and maybe such a compiler could be more performant thanks 
to slicing and the like. But until D2 is fully stable, that just seems like 
wasted effort. There are far more important things for getting D2 fully 
usable. The operative word is "nice." It would be _nice_ if we had a fully 
working D compiler in D, but it's far from necessary and really doesn't gain 
us much at this point in time.

I honestly don't understand why having a D compiler in written in D is so 
important to some people. What we need is a solid compiler. The language that 
it's in doesn't matter all that much IMHO. Yes, it's a good sign for D if it 
can have a fully functional, performant compiler written in D (especially if 
it's _more_ performant than a comparable compiler written in C++), but what 
matters is being able to write your own code in D, not whether the tools 
you're using were written in any particular language.

However, regardless of why you might want another D compiler with a new 
frontend, I think that it would make a _lot_ of sense to wait until D2's spec 
has completely stabilized (it's fairly stable now but not completely stable), 
and dmd is more or less bug-free (obviously not completely bug-free, but on 
the level typically expected of a compiler). That would severely reduce how 
much rewriting you would have to do as D and dmd change, and the problem would 
become much more tractable.

- Jonathan M Davis


More information about the Digitalmars-d mailing list