> perl -de 0 # ... DB<1> sub AUTOLOAD { print STDERR "$AUTOLOAD( @_ ): "; eval } DB<2> tie %h,'main' main::TIEHASH( main ): bless [] DB<3> x tied %h 0 main=ARRAY(0x1c81a88) empty array DB<4> print 0+keys %h main::FIRSTKEY( main=ARRAY(0x1c81a88) ): 'hello' main::NEXTKEY( main=ARRAY(0x1c81a88) hello ): 'goodbye' main::NEXTKEY( main=ARRAY(0x1c81a88) goodbye ): 2 DB<5> while( my($k,$v)= each %h ) { warn "$k=>$v\n"; keys %h if !$v } main::FIRSTKEY( main=ARRAY(0x1c81a88) ): 'hello' main::FETCH( main=ARRAY(0x1c81a88) hello ): 'hi' hello=>hi main::NEXTKEY( main=ARRAY(0x1c81a88) hello ): 'goodbye' main::FETCH( main=ARRAY(0x1c81a88) goodbye ): 'bye' goodbye=>bye main::NEXTKEY( main=ARRAY(0x1c81a88) goodbye ): 'reset' main::FETCH( main=ARRAY(0x1c81a88) reset ): 0 reset=>0 main::FIRSTKEY( main=ARRAY(0x1c81a88) ): DB<6> q main::DESTROY( main=ARRAY(0x1c81a88) ): > exit #### sub AUTOLOAD { print STDERR "$AUTOLOAD( @_ ): "; eval }