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