dmdz

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Tue Mar 16 18:13:32 PDT 2010


On 03/16/2010 05:55 PM, Ellery Newcomer wrote:
> Anyone want to play with dmdz, here it is:
>
> http://personal.utulsa.edu/~ellery-newcomer/dmdz.zip
>
>
> Haven't tested it much, especially on windows. Don't know what it will
> do with multiple zip files. piecemeal flag doesn't know how to stop when
> you tell it to. dmd's run flag isn't handled correctly (I don't know how
> it's supposed to work).
>
> Does anyone know of a way to tell whether a command in bash or whatever
> segfaults?
>
> And I modified std.path.dirname and std.path.basename, so I just
> included them in dmdz.d.
>
> Otherwise, it should work okay. It can compile itself under 2.040.

This is solid work, but I absolutely refuse to believe the solution must 
be as complicated as this. Recall that the baseline is a 30-lines 
script. I can't bring myself to believe that a four-modules, over 
thousand lines solution justifies the added complexity.

Besides, what happened to std.getopt? You don't need to recognize dmd's 
options any more than rdmd does. rdmd dedicates only a few lines to 
argument parsing, dmdz makes it a science.

Don't take this the wrong way, the work is absolutely a tour de force. 
I'm just saying that things could be dramatically simpler with just a 
little loss of features. I'm looking over the code and am puzzled about 
the kind of gunpower that seems to be necessary for achieving the task.

Recall what's needed: someone who is able and willing would like to 
distribute a multi-module solution as a zip file. dmdz must provide a 
means to do so. Simple as that. The "able and willing" part is important 
- you don't need to cope with arbitrarily-formatted archives, you can 
impose people how the zip must be formatted. If you ask for them to 
provide a file called "main.d" in the root of the zip, then so be it if 
it reduces the size of dmdz by a factor of ten.


Andrei



More information about the Digitalmars-d mailing list