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


in reply to Re: "or die" versus "|| die"
in thread "or die" versus "|| die"

Just because you're invoking die after an || or a or doesn't mean you don't have to think about precedence. Consider the following:

somesub $this, $that || die;

If you use 'or' here, you'll die upon failure of somesub (assuming it returns false to indicate failure). If you use ||, you'll die if $that is false. Big difference.


Dave

Replies are listed 'Best First'.
Re^3: "or die" versus "|| die"
by Anonymous Monk on Jun 24, 2005 at 20:30 UTC
    Just because you're invoking die after an || or a or doesn't mean you don't have to think about precedence. Consider the following: somesub $this, $that || die; If you use 'or' here, you'll die upon failure of somesub (assuming it returns false to indicate failure). If you use ||, you'll die if $that is false. Big difference.

    If you call somesub with parens, the argument list is clearer to novice coders, the notation matches what they learned in grade 6 math class, and in this case, the precedence issue disappears.

    In my experience, thinking too hard about precedence is usually a clue that you're being too tricky with your code.