Thank you for the example. Indeed when I saw these kinds of scripts to read three options, that's what made me gag.

That's a *lot* of typing for three options. As I'm sure you know, compared to perl's 3 (three, tres) lines:

use Getopt::Std; my $o={}; getopts('ab:c:defghijklmnop',$o); # map { printf "%s %s\n", $_, $o->{$_} } keys %$o;

I disagree that single letter options are limited, in fact I throw a tantrum about that.
'--min' in one cli app may be '--minimum' in another, we *know* that. So long notation doesn't really improve anything more then legibility, at least for the occasional user. Yes, yes.. then there are monsters like imagemagick convert.. good point, those need long.

The only thing we can ever really be sure of is that hopefully us who code actually reserve -h for help, and that the documentation exists.

The documentation is the authority for an interface. Some basic rules alway, yes.. options before file lists.. -h for help, -v for version, etc.. The user should *never* have to remember anything. Ever. -h, man, and info will tell them whatever they need to know.
By the way, it's not 24, it's 52 or so, caps ! And I use them. And I document them. :-)


In reply to Re^2: bash vs perl by leocharre
in thread bash vs perl by leocharre

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.