Hash Perl

%hash = ( Karl  => 2,
          Joe   => 3,
          Shawn => 0,
          Paul  => 1, 
          Bill  => undef );
# obtain the list of hashKeys and display each key-value pair
@hashKeys = keys( %hash );
for ( $i = 0; $i < @hashKeys; ++$i ) {
   print "$hashKeys[ $i ] => $hash{ $hashKeys[ $i ] }\n";
}
delete( $hash{ 'Joe' } );
while ( $key = pop( @hashKeys ) ) {
   print "\n";
   # determine if the value for the key is defined
   if ( defined( $hash{ $key } ) ) {
      print "$key is defined as $hash{ $key }.\n";
   }
   else {
      print "$key is undefined.\n";
   }
}