What are the worst parts of D?

Dmitry Olshansky via Digitalmars-d digitalmars-d at puremagic.com
Thu Sep 25 10:18:26 PDT 2014


25-Sep-2014 01:12, Andrei Alexandrescu пишет:
> On 9/24/14, 1:10 PM, H. S. Teoh via Digitalmars-d wrote:
>> That's unfortunate indeed. I wish I could inspire them as to how cool a
>> properly-done build system can be.
> [snip]
>
> That's all nice. However: (1) the truth is there's no clear modern build
> tool that has "won" over make;

Pretty much any of them is better, and will easily handle the size of 
phobos/druntime/dmd projects.

> oh there's plenty of them, but each has
> its own quirks that makes it tenuous to use;

Somehow must indicate that make doesn't have them (and in incredible 
capacity)?

Most of my Scons scripts are under 10 lines, in fact 2-3 LOCs.

I had an "insanely" complicated one could handle 2 platforms, 3 
emulators and a few custom build steps (including signing binaries), 
cleaning, tracking dependencies with minimal rebuilds. For instance, 
binary need not to be signed again if it's bit for bit the same.
All of the above was done in about 50 lines, never braking as the 
project progressed, I think it changed only 2-3 times over a year.

I was never able to make a good makefile that wouldn't shit on me in 
some way, like not properly cleaning something or handling errors . I'm 
not even talking about the 10+ LOCs for anything barely useful.

> (2) any build system for a
> project of nontrivial size needs a person/team minding it - never saw
> such a thing as it's just all automated and it works;

The question is amount of work, size of file and frequency of changes. 
For instance, Scons easily allows not to change a makefile on every 
single added module, I can't say if make could pull it off.

> (3) especially if
> the build system is not that familiar, the role of the build czar is all
> the more important.

Somebody (Russel?) was working on D Scons support, how about start to 
capitalize on this work? I'd gladly try to make a scons script for 
phobos/druntime if there
is even a tiny chance of apporval.

> So the reality is quite a bit more complicated than the shiny city on a
> hill you describe.

Most people using make/autotools say build systems are hard, it need not 
to be true but I'm obviously biased.

-- 
Dmitry Olshansky


More information about the Digitalmars-d mailing list