in reply to
Using hash value as condition.
The point here is that "false" is not a reserved word (or a built-in function) in Perl, so it has no special meaning. In your snippet, it's treated as a "bareword", which you can look up under "B" in the perlglossary:
A word sufficiently ambiguous to be deemed illegal under use strict 'subs'. In the absence of that stricture, a bareword is treated as if quotes were around it.
In other words:
perl -le '$x = false; print length($x); print "x is ".join("-",split//
(that will print out two lines: "5" and "x is f-a-l-s-e")