I'm don't often use getopt just for the fact that I can't use single-dash arguments like '-release'. DMD uses this syntax, and so to other tools. It's not a big deal thanks to D's fantastic string-manipulation abilities, so I just roll my own. All I need is a switch(args) statement.