Migrating dmd to D?

Denis Koroskin 2korden at gmail.com
Fri Mar 1 19:46:57 PST 2013


On Saturday, 2 March 2013 at 03:01:20 UTC, Walter Bright wrote:
> On 3/1/2013 6:55 PM, Andrej Mitrovic wrote:
>> On Saturday, 2 March 2013 at 02:35:34 UTC, Walter Bright wrote:
>>> On 3/1/2013 7:43 AM, H. S. Teoh wrote:
>>>> Wow. You make me feel really lucky that at my day job, I 
>>>> once made a
>>>> request to use a particular piece of open source software, 
>>>> and the legal
>>>> department actually replied with "the license is MIT, it 
>>>> should be OK,
>>>> approved."
>>>
>>> This is exactly why we are using a well-known license, rather 
>>> than rolling our
>>> own.
>>
>>
>> Anyway the DDMD maintainer was asked about the license in 2010,
>> he never picked one but it seemed like he was open to
>> anything:
>> http://www.dsource.org/forums/viewtopic.php?p=25763#25763
>
> I'd recommend Boost or GPL. Anyhow, it's a pity to see his work 
> go to waste because of no license.

I'm no copyright lawyer, but I think ddmd being a derivative work 
from dmd should probably inherit the license from it (although I 
prefer Boost as in my opinion it is more liberal that GPL).

If someone is willing to bring the project back from it's stale 
state - I'm more than willing to help (by both writing patches 
and explaining how the existing code works). He must also 
understand that ddmd is a couple of years behind dmd, and 
updating it is a monkey-work that requires little thinking but 
lot's of time.

It usually took me a couple of hours to generate a code diff 
between 2 subsequent dmd releases, apply it to ddmd and run tests 
(normally I was compiling druntime.lib and compare it against one 
produced by dmd - they should match byte-for-byte) - that is if 
everything went smoothly.

Sometimes they won't match so I compile druntime one file at a 
time, find what files don't match, reduce test case even further 
until I find the source of the problem and fix it. For me 
(someone who only has very basic understanding of the codebase) 
it could took another extra couple of hours to fix bugs. Recent 
releases also started containing more features and a lot more 
bugfixes (= larger diffs, more difficult to merge). Let's make it 
5 hours per release.

20 versions behind x 5 hours of work ~ 100 man-hours to bring it 
up to date. A little optimistic probably, but it doesn't sound 
too bad :)

Anyway, feel free to take the sources and attach whatever license 
you want to it.


More information about the Digitalmars-d mailing list