good chemistry is complicated,and a little bit messy -LW PerlMonks

Re^7: Burned by precedence rules (eqv)

by tye (Sage)
 on Dec 31, 2008 at 02:14 UTC ( #733381=note: print w/replies, xml ) Need Help??

in reply to Re^6: Burned by precedence rules (== true)
in thread Burned by precedence rules

Nah. Clearly this demonstrates the utility of a few "Boolean comparison" operators:

if \$isFree ?= \$isEasy if \$isOne !?= \$isOther unlink \$dev eqv unlink \$prod or die "Inconsistent state"; system \$verifyUser neqv system \$verifyAdmin or die "You are not just either a User or an Admin";

;)

- tye

Replies are listed 'Best First'.
Re^8: Burned by precedence rules (eqv)
by TimToady (Parson) on Dec 31, 2008 at 03:17 UTC
Well, we can't use eqv because we already use that for something else, but we do have a Boolean not-equal already:
\$x ?^ \$y
What we don't have is a Boolean equal. I thought about adding:
\$x ?= \$y
but people would probably think that means:
\$x = \$x ? \$y;
which is nonsense, but they'd still think it. :-)

Anyway, the utility is not worth the extra complexity, in my opinion. Comparing two Booleans for equivalence is an odd enough thing to do that I don't mind if it looks a little odd.

What about saying that !( potential boolean operator ) means the boolean negation of the boolean operator? That would naturally give you the logical operators !&& (nand), !|| (nor) and !^ (not xor). The last would, of course, be Boolean equals.

(I can't believe I just suggested that.)

Note that I did include a winky smiley. But I saved the clincher argument for now: Perl 6 is becoming so like VB, it will be very surprising to VBers when the purpose of eqv is so different. :-D

- tye

Create A New User
Node Status?
node history
Node Type: note [id://733381]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (10)
As of 2018-06-25 12:41 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
Should cpanminus be part of the standard Perl release?

Results (126 votes). Check out past polls.

Notices?