Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Re: defined defined -- Bug or "Feature"?

by dave_the_m (Monsignor)
on Dec 24, 2015 at 07:45 UTC ( #1151094=note: print w/replies, xml ) Need Help??

in reply to defined defined -- Bug or "Feature"?

defined($x) returns a false, but defined value, so defined(defined($x)) is true.


Replies are listed 'Best First'.
Re^2: defined defined -- Bug or "Feature"?
by GrandFather (Sage) on Dec 24, 2015 at 08:00 UTC

    You state that like you know it to be the case, but I couldn't see that behavior described in the documentation. Do you know this from the code?

    Premature optimization is the root of all job security
      The docs say that it returns a boolean value, i.e. a true or false value. It would be surprising for a false value to also be undefined, as you would get 'undefined' warnings if you tried using operators on the results. This shouldn't warn:
      $x = defined($y) ^ defined($z);


      I guess he didn't (guess). It's easily tested...
      print defined( undef ) // 'n/a'; print defined( undef ) || 'n/a'; n/a

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (4)
As of 2020-11-01 02:29 GMT
Find Nodes?
    Voting Booth?
    My favourite web site is:

    Results (291 votes). Check out past polls.