In the interest of tmtowtdi, here's an alternate Getopt::Declare
scenario that sets up the $all and @words variables in action blocks.
Here I decided to make the search words required (but without option
description), and just allow for -a as an abbrev. of -all (instead of
using the --all version):
#!/usr/bin/perl -w
use strict;
use LWP::UserAgent;
use Getopt::Declare;
use vars qw/$all @words/;
my $opts = Getopt::Declare->new(<<'EOS');
-a[ll] List all matches
{$all = 1}
<terms:s>... [required]
{@words = @terms}
EOS
for my $word (@words) {
# insert fetch code ...
# ...
last unless $all;
}
__END__