Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

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.

Dave.

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);

      Dave.

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

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (6)
As of 2020-01-17 16:42 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?