http://qs321.pair.com?node_id=120201


in reply to passing subroutine arguments directly into a hash

If I understand you right you're looking for something like...
@list = qw (one two three); %args = ( arg1 => 'string', arg2 => 5, arg3 => \@list ); sub1(%args); sub sub1 { my %args = ( arg1 => 'default', arg2 => 0, arg3 => undef, @_ ); print "$_ => $args{$_}\n" for keys %args; }
For me this prints out
arg1 => string arg2 => 5 arg3 => ARRAY(0x1a72f84)

This allows you to pass in the arguments as a hash, provide defaults in the subroutine, and override them with arguments passed in. This is right out of 'Effective Perl Programming' by Joeseph Hall and Randal Schwartz.

Ira,

"So... What do all these little arrows mean?"
~unknown