Migrating dmd to D?

Jonathan M Davis jmdavisProg at gmx.com
Fri Mar 1 02:35:44 PST 2013


On Friday, March 01, 2013 09:50:13 Thomas Koch wrote:
> > 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.
> 
> Two points from the viewpoint of the Debian distribution:
> 
> Debian is ported to many different platforms and in average one new platform
> port started every year. A huge pain point for porters are circular (or
> self) dependencies. A lot of effort goes into breaking such circles.
> 
> So in the moment the D language is great in that it does not introduce a new
> circular dependency. It would be a pity to lose this.
> 
> The second important thing for Debian (and Fedora and others) is licensing.
> It's a pity that DMD isn't free software and I believe DMD not being in
> distros is one reason for the low popularity of D. It's hard to learn D with
> gdc while all tutorials are based on DMD.
> 
> So instead of a rewrite of D, it would rather be important (from my humble
> point of view) to replace non-free parts of DMD.

I don't really care about the license, but I can definitely say that part of me 
finds the idea of having a compiler compiling itself to be a bad idea, much is 
compiler folks love to do that. Recently, I had some older haskell code that I 
needed to compile, but it followed the previous haskell standard, and I 
couldn't get the current compiler to compile it even in compatability mode. 
So, I tried to compile an older version of the compiler from before the new 
standard, and it had exactly the same problems that my code did, because it 
was written in haskell using the older standard. So, I had to give up on being 
able to compile my code, because I couldn't get my hands on an old enough 
version of the compiler. If they'd just written it in C/C++, then I wouldn't 
have had that problem.

I know that it's generally touted as a great idea for a language to compile 
itself, and I'm sure that it would be great to be able to use D's features in 
the compiler, but the circular dependency that that causes is a definite 
negative IMHO.

- Jonathan M Davis


More information about the Digitalmars-d mailing list