Getopt::Tabular is a Perl 5 module for table-driven argument parsing, vaguely inspired by John Ousterhout's Tk_ParseArgv. All you really need to do to use the package is set up a table describing all your command-line options, and call &GetOptions with three arguments: a reference to your option table, a reference to @ARGV (or something like it), and an optional third array reference (say, to @newARGV). &GetOptions will process all arguments in @ARGV, and copy any leftover arguments (i.e. those that are not options or arguments to some option) to the @newARGV array. (If the @newARGV argument is not supplied, GetOptions will replace @ARGV with the stripped-down argument list.) If there are any invalid options, GetOptions will print an error message and return 0. If you have local Perl set up and override the "install base" parameter through the $PERL_MB_OPT or $PERL_MM_OPT variables then the build will fail.