Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Re: Re: My coding guidelines

by helgi (Hermit)
on Nov 28, 2002 at 16:35 UTC ( #216341=note: print w/replies, xml ) Need Help??


in reply to Re: Re: My coding guidelines
in thread My coding guidelines

You wrote:
Since I never use 'not' in my code ... yes. ;)

If not, why not? What do you use instead?
I find not is usually the cleanest and most readable operator for all sorts of tests.

die "$usage" if not @ARGV; if (not -r $file) { die "Cannot read $file\n"; } print "$pattern not found in $file\n" if not $found;
And so forth.

--
Regards,
Helgi Briem
helgi AT decode DOT is

Replies are listed 'Best First'.
Re(4): My coding guidelines
by mojotoad (Monsignor) on Nov 29, 2002 at 23:38 UTC
    If not, why not? What do you use instead? I find not is usually the cleanest and most readable operator for all sorts of tests.

    It's just a matter of taste. I'm not against using not, I just don't happen to prefer it.

    You give the following example:

    print "$pattern not found in $file\n" if not $found;

    In this case I would use unless:

    print "$pattern not found in $file\n" unless $found;

    As for if (not -r $file) {...}, I typically use the bang operator (!) rather than not -- just a matter of preference, probably due to my C influences.

    Matt

      print "$pattern not found in $file\n" unless $found;
      I use unless when I expect that the print will be executed most of the time - unless the condition happens to be true. In the quoted case, I'd probably use if not, as the if highlights the fact that the message is only printed if the pattern wasn't found. Just like the way you use "if" and "unless" in English.

      Makeshifts last the longest.

      I prefer never to use the ! operator if I can possibly avoid it. It is much easier for me to miss when skimming through code and my brain doesn't parse it autmoatically like it does "not".

      For much the same reason I always prefer "or" to "||" and "and" to "&&". My brain already knows how to parse these English words and I don't need to teach it new tricks.

      --
      Regards,
      Helgi Briem
      helgi AT decode DOT is

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://216341]
help
Chatterbox?
[Lady_Aleena]: Corion, how are things?
[Corion]: Lady_Aleena: Quite good ;) I'm working four days now, instead of five, which helps my mood and my weekends tremendously
[Corion]: My Perl output hasn't recovered, but as $work is still somewhat stressful, I don't think this would be different with a five day workdweek
[Lady_Aleena]: Corion, that is a good thing (TM) 8)
[Corion]: And this evening, I'm actually dusting off some old module of mine and bringing it up to the last version of the library I'm wrapping
[Lady_Aleena]: Updating things can be fun, if there is a better way to do it.
[Corion]: Lady_Aleena: Mostly, it's just housekeeping, but it inspires me about things I could do with it, so that's good ;)
[Lady_Aleena]: By the way, I stopped by to let someone know I'm still alive, though I haven't found anything to write in perl for a while now.
[Lady_Aleena]: I need inspiration.

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (7)
As of 2017-09-24 18:13 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    During the recent solar eclipse, I:









    Results (274 votes). Check out past polls.

    Notices?