universe of possible hash elements in Perl +--------------------------------------+ | elements that exist | $hash{element_exists}; # this example: exists, undefined, false | +--------------------------------+ | | | elements that are defined | | $hash{element_defined} = function_def();# this example: exists, defined, unknown false/true | | +--------------------------+ | | | | | elements that are true | | | $hash{element_true} = 1; # this example: exists, defined, true | | +--------------------------+ | | | | | | | | +--------------------------+ | | | | : elements that are false : | | $hash{element_false} = function_false();# this example: exists, defined, false | | : +-------------------+ : | | | | : | false but defined | : | | $hash{element_false_defined} = 0; # this example: exists, defined, false | | : +-------------------+ : | | | +--:--------------------------:--+ | | : : | | +--:--------------------------:--+ | | | : +-------------------+ : | | | | : | false but undef | : | | $hash{element_false_undefined} = undef; # this example: exists, undefined, false | | : +-------------------+ : | | | | +--------------------------+ | | | | elements that are undefined | | $hash{element_undefined}; # this example: exists, undefined, false | +--------------------------------+ | +--------------------------------------+