http://www.perlmonks.org?node_id=98820


in reply to Re: Operator Precedence
in thread Operator Precedence

I think we would all agree that documenting every line of your code (with parens, formatting, spacing, pod, comments etc etc) is too much:

$a = 3;  # Set the global variable called a (which is a scalar variable, meaning that it can hold either a number or a string - in this case we are using a string) blah blah...

Is not a "moderate" amount of documentation.

Writing your entire program on one-line is also not a "moderate" amount of documentation.

So somewhere in between the two extremes lay a "moderate" amount of attention to readability and documentation.

My statement is that at that point of moderation - in most professional environments - it *should* be expected that the reader knows the precedence table - and therefore documentary parenthesis are not necessary.

Replies are listed 'Best First'.
Re: Re: Re: Operator Precedence
by Cubes (Pilgrim) on Jul 22, 2001 at 20:12 UTC
    The trouble with basing decisions on how things *should* be is that so often things are not as they should be.

    Heck, I'm happy when co-workers can comprehend basic office ettiquette and the boss doesn't expect me to teach everything I've learned in the past 15 years to the new guy in 15 minutes. If I expected the person reading my code to have as firm a grasp of the precedence table as you, I'd be disappointed more often than not.

    The sad reality is, in much of the "professional" world, budgets are too small, deadlines are too soon, and managers don't give a hoot what your code looks like on the inside as long as it gets the job done. Call my extra brackets False Laziness if you want; I call it an extra bit of insurance against one more brain-fart bug -- one that I don't have time to track down and fix -- creeping into my code.

    Good for you for questioning things, especially in public. We need questions like this to remind us to take a good look at how and why we're doing things the way we are. Unfortunately, there are times when the best answer I can give is "because I have to."

    (OK, I don't really *have* to, but I'm not quite willing to give up my paycheck to crusade against extra brackets in perl code :-)