State of the Compiler

Chris Wright via Digitalmars-d digitalmars-d at puremagic.com
Mon Feb 29 08:22:41 PST 2016


On Mon, 29 Feb 2016 07:33:51 +0000, Suliman wrote:

> On Monday, 29 February 2016 at 04:53:16 UTC, Jack Stouffer wrote:
>> On Monday, 29 February 2016 at 00:10:33 UTC, Walter Bright wrote:
>>> 12. start retrofitting with phobos algorithms
>>
>> Other DMD devs have taken a hard line stance that Phobos code cannot
>> and should not be used in ddmd. What's your opinion on that?
> 
> Please, explain the situation...

DMD doesn't depend on Phobos. It will not depend on Phobos. There are a 
number of reasons for this.

One of the important ones is: let's say DMD depended on Phobos. I'm 
developing Phobos and DMD side by side. I need a new function for DMD, 
and it would fit nicely in std.algorithm. So I add it to Phobos in a PR, 
add my code to DMD the next day -- and suddenly compiling DMD is a mess.

And that situation is worse. If DMD added a new feature earlier that 
release cycle and Phobos started depending on it, now you can't compile 
Phobos with the prior version of DMD, and you can't compile DMD with the 
prior version of Phobos, so you need to check out potentially several 
different revisions of DMD and Phobos iteratively to build their next 
versions.

Also, by not including all of Phobos, there's less code to reason about 
if you're trying to verify DMD's correctness. That's a bit marginal, but 
it's there.


More information about the Digitalmars-d mailing list