Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Re^2: About the use of the plural form for the name of variables (Perl Best Practices best practices)

by tye (Cardinal)
on Nov 08, 2012 at 15:17 UTC ( #1002921=note: print w/ replies, xml ) Need Help??


in reply to Re: About the use of the plural form for the name of variables
in thread About the use of the plural form for the name of variables

I think great, but its not a table, use %veg :)

Excellent point.

Hmm, Perl Best Practices for naming variables says use %vegetable in the singular

This made me chuckle. It lead to me imagining Dr. Conway digging his own grave just so he could roll over in it. I know he went to a lot of effort to provide justifications for each "rule" he included. And I know he went to a lot of effort to document that his intent was not to have people blindly parroting rules without considering the justifications and whether or not each applied to their particular environment / situation / style, etc.

And yet, the vast majority of references to Perl Best Practices that I see are cases of people blindly parroting rules from it. (Perl::Critic is perhaps the most egregious example of this.)

But I give you points for providing a link. The link did include a justification:

Damian also recommends naming hashes in the singular, the idea being that individual accesses seem more natural: $vegetable{spinach}.

Note that I already said that I don't mind having the pluralizing 's' (or other suffix) being immediately followed by a "one of" syntax element (like [1] or {spinach}). They end up right next to each other and so I find no confusion results.

But I also find $vegetable{spinach} to be an example of a lousy use of a variable name. What are you tracking about vegetables, including spinach? Which of the things that you are tracking do I get back from $vegetable{spinach} ? I guess you might have a bunch of Whatever::Vegetable objects, which would make the name less bad.

I've seen a recommendation to use prepositions in the names of hash variables. For example, my %vegetable_obj_from_name;. But I realize that I relatively rarely have multiple hashes indexing into the same space of values. So I'm more likely to go with your advice of "It is a variable of limited scope, give it a name that is somewhat mnemonic but also short and thus faster to type and even to read... like %veg".

Thanks for the reality check and for the chuckle. (:

- tye        


Comment on Re^2: About the use of the plural form for the name of variables (Perl Best Practices best practices)
Select or Download Code
Replies are listed 'Best First'.
Re^3: Using plural form for variable names (Perl Best Practices)
by space_monk (Chaplain) on Nov 08, 2012 at 15:25 UTC
    The reasoning from your example is obvious; Google only returns "vegetable hash" recipes, but not "vegetables hash" recipes. :-P
    A Monk aims to give answers to those who have none, and to learn from those who know more.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (15)
As of 2015-07-28 14:09 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (255 votes), past polls