[EMAIL PROTECTED] wrote:
> 
> On Wed, Apr 17, 2002 at 02:02:02PM -0400, Bill -Sx- Jones wrote:
> > I have the habit of doing:
> >
> >          last if (substr($vFlag, 1, 3) eq 'END');
> > $vSub = \&Sneex   if (substr($vFlag, 1, 5) eq 'SNEEX');
> > $vSub = \&Admin   if (substr($vFlag, 1, 5) eq 'ADMIN');
> > $vSub = \&Reports if (substr($vFlag, 1, 7) eq 'REPORTS');
> > $vSub = \&Logs    if (substr($vFlag, 1, 4) eq 'LOGS');
> > $vSub = \&Targets if (substr($vFlag, 1, 7) eq 'TARGETS');
> > $vSub = \&Usenet  if (substr($vFlag, 1, 6) eq 'USENET');
> >
> > (substr($_, 0, 1) eq '[') ? next : &$vSub;
> 
> my @tags = qw /SNEEX ADMIN REPORTS LOGS TARGETS USENET/;
> last if 'END' eq substr $vFlag, 1, 3;
> next if '['   eq substr $_,     0, 1;
> {
>     local $" = "|";
>     no strict 'refs';
>    (ucfirst lc $1) -> () if $vFlag =~ /^.(@tags)/;
> }

since the original sub was called as
  &$vSub;

wouldn't this be more equivalent (just in case
@_ was to be passed to the sub intentionally)?

     &{ ucfirst lc $1 } if $vFlag =~ /^.(@tags)/;

--
Steve Lane <[EMAIL PROTECTED]>

Reply via email to