Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much

Re^2: Or, Or, Equals Zero, $x ||= 0 ('')

by tye (Sage)
on Nov 28, 2007 at 05:56 UTC ( #653485=note: print w/replies, xml ) Need Help??

in reply to Re: Or, Or, Equals Zero, $x ||= 0
in thread Or, Or, Equals Zero, $x ||= 0

Works for strings too: $x ||= '': will avoid warnings about using an undefined value in a print, string concatenation, string comparison, regular expression, and so on.

That also turns '0' into '' and so would probably be better written as:

$x= '' if ! defined $x;

Or you can use //= if you are on the bleading edge and eschew backward compatability. Note that ||= is probably the best choice for the numeric case as treating '' as a number can also cause a warning.

- tye        

Replies are listed 'Best First'.
Re^3: Or, Or, Equals Zero, $x ||= 0 ('')
by Erez (Priest) on Nov 29, 2007 at 11:01 UTC
    If it's on a new code, and no animals are harmed, I don't see a problem with using 5.10 syntax. It's a question of what the people around you like to read. For instance, I'd write it
    $x= '' unless defined $x;
    But its a question of whatever suits.

    Software speaks in tongues of man; I debug, therefore I code.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://653485]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (6)
As of 2023-02-07 10:33 GMT
Find Nodes?
    Voting Booth?
    I prefer not to run the latest version of Perl because:

    Results (38 votes). Check out past polls.