std.parallelism is accepted into Phobos

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Tue Apr 26 10:33:46 PDT 2011


On 4/26/11 11:33 AM, Jacob Carlborg wrote:
> On 2011-04-26 17: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.)
>
> I just counted how may times a module name is repeated (in the windows
> makefile), "isemail" is repeated nine times. I mean, that's insane. I
> should only have to write it a one place, not nine.

I agree. That's why I put together posix.mak. On Windows things have 
remained that way because Walter doesn't want to depend on cygwin, so 
the make utility used on Windows is the one he wrote (which doesn't 
support many features of make).

If I had remote access to a Windows machine I'd be able to use posix.mak 
for the Windows build too. It used to work (on a machine donated by Adam 
Ruppe) but that machine has gone dark since.

> One thing I think it's scary about makefiles is that I can add or remove
> a single space and it all breaks down I have no idea why. It took me
> some time to figure out that makefiles are very sensitive about spaces.

The one odd thing to remember is that a rule's actions must start with a 
tab. That's about it.


Andrei


More information about the Digitalmars-d mailing list