std.parallelism is accepted into Phobos

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Tue Apr 26 09:28:29 PDT 2011


On 4/26/11 10:51 AM, Robert Clipsham wrote:
> On 26/04/2011 16:09, Andrei Alexandrescu wrote:
>> On 4/26/11 7:50 AM, Russel Winder wrote:
>>> On Tue, 2011-04-26 at 08:32 -0400, dsimcha wrote:
>>> [ . . . ]
>>>
>>>> Soon. I'm praying that I can figure out makefiles in that time to check
>>>> std.parallelism in, since I think they're harder to work with than
>>>> multithreading. (Ok, I'm exaggerating.) Among the other major
>>>> improvements in this release:
>>>
>>> Isn't Make 1970s technology, I'd have thought D would use more
>>> up-to-date build technology than that -- even though Go uses it and
>>> refuses to look at other options.
>>
>> The debate about make being inadequate is almost as old as make itself
>> :o). Our gnu makefile for Posix isn't in any way difficult or scary,
>> although it did take a few iterations to get it right. It has 312 lines
>> to control a build of 143KLOC, which is a good ratio. The only
>> difficulty David would have to modify that makefile is to find the one
>> place where all modules are enumerated, and insert his module's name
>> there, so I have no idea why he finds that task daunting. (The Windows
>> makefile is crappier and repeats itself a lot of times so that's more
>> annoying to deal with.)
>>
>> The simple fact is that if someone wants to improve our build system
>> they'd have to define it and argue successfully for its superiority. The
>> issues I'm seeing as a build-systems-outsider who doesn't pay much
>> attention are: (a) there are TONS of them; (b) each has issues that
>> prevents it from becoming a new de facto standard; (c) the "best" one
>> depends a lot on who you ask.
>>
>>
>> Andrei
>>
>
> My current favorite build tool is redo - it's about 200 lines of python
> and build scripts are about 5 lines for entire projects. It supports
> full dependencies (a depends on b depends on c, c is changed, a, b, and
> c recompiled), parallel compilation etc. I've set mine up to need zero
> modification too when I add new files to my library. Heck, you can even
> write your build scripts in D! That said, they'll be rather ugly unless
> you port the python to D, once that is done you could write a beautiful
> build script using D, it's on my todo list for when I get some free
> time... (When is that btw? :D).
>
> https://github.com/apenwarr/redo more info at http://cr.yp.to/redo.html
> which is linked from the github page anyway.

Interesting. It would be great if you tried your hand at expressing the 
Phobos build (which is rather simple) with redo so we can see the result.

Thanks,

Andrei


More information about the Digitalmars-d mailing list