On 01/09/13 12:29, Jonathan M Davis wrote:
On Saturday, August 31, 2013 19:18:11 Andrei Alexandrescu wrote:
I remember sitting next to Kirk McDonald at the D conference in 2007 as
he was showing me Python's argparse. I personally found pretty much any
example we could think of more verbose and uglier than std.getopt.

std.getopt is definitely lacking some nice-to-have features (like automatically
generating --help from the options), but for the most part,

That's the part of argparse that I miss the most.

Also, its support for sub commands is excellent. I implemented a version of quilt in Python and argparse made adding sub commands a breeze once the main engine was complete.

I must admit that I toyed with the idea of implementing argparse in D myself but rejected the idea when I realised that hard typing in D would make it a non trivial exercise.

But I still think the basic ideas (i.e. integrated documentation, specifying how many no option arguments there can be and support for sub commands) are good. I especially like the integrated documentation as it makes code maintenance much easier when everything about an option/argument is in the one place.

Peter
PS before argparse I used to use getopt (C and Python) and I still haven't decided whether I like D's version better than the originals (probably yes for C and no for Python).

Reply via email to