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

BeneSphinx has asked for the wisdom of the Perl Monks concerning the following question:

I like the natural flow of statements with the conditional at the end, but I'm having some difficulty understanding how it relates to order of operations, since if/unless/etc aren't listed in the Operator Precedence table (http://perldoc.perl.org/perlop.html#Operator-Precedence-and-Associativity) For example code like:
my $message = "Congrats" unless not defined $reward;
or
my @badVals; for my $val (@vals){ push @badVals, $val && next if isBad($val); print "$val is a good val.\n"; }
I would love to write these without parentheses because it's so nice to read, but I'm concerned about ambiguity. Wondering if you have any tips so I can try to at least get halfway there without danger... overall I'm curious about best practices for these kinds of statements.