Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Re: Variable Naming

by rir (Vicar)
on Sep 27, 2002 at 20:59 UTC ( [id://201341]=note: print w/replies, xml ) Need Help??


in reply to Re: Variable Naming
in thread Tact and the Monastery

sub wanted { return unless -f $_; my $old_flag = -M $_ > 180 ? 'old' : 'new'; $ages{$File::Find::dir}{$old_flag}++; }
Likely this is in a little script and I'd have no
complaint
with its expeditious style. Something of the
thank-goodness-I-got-it-to-work style with which I am quite
familiar.

There is certainly a trap of believing variable names.
Like believing the documentation.

This looks like code that was refactored because the
routine name also seems to reflect a time when the author
was going to use a boolean return here and effect his count
elsewhere.

If this was part of a larger body of code...
My first concerns, assuming it does what is wanted, are:

  • Is 180 magic?
  • Where did %ages come from?
  • Are 'old' and 'new' magical, Hash keys can be a difficult call on magicalness.
  • Is the routine name okay. Maybe a leading underscore.

The $old_flag might make my list, a meaningless name like
$var seems better. But it is an issue for only two lines.

I would consider inlining:

# untested if ( -f $file) { $age{$File::Find::dir}{ -M $file < 180 ? 'old' : 'new' }++; }

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://201341]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (4)
As of 2024-04-16 22:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found