Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re^2: Perl logical operators

by tweetiepooh (Hermit)
on Jul 10, 2019 at 13:38 UTC ( #11102642=note: print w/replies, xml ) Need Help??

in reply to Re: Perl logical operators
in thread Perl logical operators

When did this form become valid? I used on my dev box (5.28) but on production (5.16) I get a syntax error and need to use

use constant {true=>1,false=>0}

Replies are listed 'Best First'.
Re^3: Perl logical operators
by choroba (Archbishop) on Jul 10, 2019 at 13:49 UTC
    Interestingly, it's a difference in Perl parser, not in constant. As usually, help the parser by telling it the { doesn't start a block, but a hash reference:
    use constant +{ qw( true 1 false 0 ) };

    map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
Re^3: Perl logical operators
by hippo (Bishop) on Jul 10, 2019 at 13:48 UTC

    perldelta for 5.18.0 says:

    use no longer tries to parse its arguments as a statement, making use constant { () }; a syntax error (perl #114222).

    which I believe refers to this.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (2)
As of 2022-08-18 05:19 GMT
Find Nodes?
    Voting Booth?

    No recent polls found