I'm not sure what you mean here - you provide a classic
example of where
or is most certainly not appropriate (as if you
use it, $param will never get the value of $default).
That is,
$param = $value or $default;
Will result in $param always getting the value of $value,
never
$default.
or has lower precedence than = (in fact
it has the absolute lowest precedence of all the operators).
Maybe it was just me not being clear, though. You should
always use 'or' where what you really want to say is:
($param=$value) or die "darn"
That is, you don't want the value of
die to get assigned
to $param (yeah, die doesn't return very often. But it
forces scalar context, which is why the alternative is a Bad Thing).
Using
or, your example would have to be:
$param=$value or $param=$default
So it's not always a matter of style.
Andrew.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.