DDMD as showcase?

Daniel Murphy yebbliesnospam at gmail.com
Mon Feb 10 20:19:22 PST 2014


"Xavier Bigand"  wrote in message news:ldbpum$1pov$1 at digitalmars.com...

> Firstly is there some progress on the DDMD project or maybe an other D 
> boostrap?

The old ddmd project is pretty much dead AFAIK 
(http://www.dsource.org/projects/ddmd) and was never up to date with the 
current compiler.

For about a year I've been working on automatically converting the compiler 
source from C++ to D.

The conversion has produced a working compiler on win32/linux32/linux64 
(other platforms need trivial patches) that compiles druntime/phobos/the 
test suite without errors.

The current effort is around cleaning up the C++ source to produce higher 
quality D code.  The next major step is to actually switch development to 
the D version.

Outstanding patches:
https://github.com/D-Programming-Language/dmd/pull/1980

Conversion tool:
https://github.com/yebblies/magicport2

You can see some of the recent patches (marked DDMD) here:
https://github.com/yebblies?tab=contributions&period=monthly

> There is a lot of thread and debate around the GC of D, I interrogate me 
> on the capacity of a project like DDMD to prove to every D users that the 
> GC is perfectly usable for system applications. If not it will certainly 
> be improve during the DDMD development to a point can satisfy almost 
> everybody?

There are no planned GC modifications for the DDMD project.  It may result 
in some compiler devs taking more of an interest in the GC.

> As I know DMD doesn't release memory, these will have to be fixed in DDMD 
> to match the memory management most application have to apply.

Yes, DDMD will use the GC, although it currently has it disabled due to a 
segfault I haven't tracked down yet.

> I see many interesting points in DDMD :
>   - prove GC based compiler isn't longer to optimize than the C++ version 
> (and capable to reach same performances)
>   - will reveal more language issues or phobos miss.

Maybe, but so far additions to the language have been minimal, and DDMD does 
not currently use phobos.  It is also slower than the C++ version, part of 
which is due to the GC being slower than the bump-pointer allocator used in 
the C++ dmd.

>   - will be easier to maintain and update

Exactly! 



More information about the Digitalmars-d mailing list