Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re^3: Perl allows you to change the definition of false to make it true. (And vice versa.)

by LanX (Canon)
on Dec 14, 2012 at 17:20 UTC ( #1008884=note: print w/ replies, xml ) Need Help??


in reply to Re^2: Perl allows you to change the definition of false to make it true. (And vice versa.)
in thread Perl allows you to change the definition of false to make it true. (And vice versa.)

> > ... For instance this way, one could try to patch booleans in a way that they stringify to "false" and "true" like in JS. ...

> This is what boolean does.

well, not yet:

JS-Console

>>> true true >>> "stringification: " + (1==1) "stringification: true"

use v5.10.0; use boolean; say true; say "stringification:" . (1==1);

output:

/usr/bin/perl -w /tmp/boolean.pl 1 stringification:1

but using dualvars could help.

UPDATE:

kind of

use Scalar::Util qw/dualvar/; my $false = dualvar 0, "false"; my $true = dualvar 1, "true"; say $true; say "stringification:" . $true; say "numification: " . (0+$true); say $false; say "stringification: " . $false; say "numification: " . (0+$false);

Cheers Rolf


Comment on Re^3: Perl allows you to change the definition of false to make it true. (And vice versa.)
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (5)
As of 2015-07-30 02:08 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (269 votes), past polls