Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
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
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 drinking their drinks and smoking their pipes about the Monastery: (6)
As of 2014-08-28 05:51 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (257 votes), past polls