sub import { my $pkg = shift(@_); ... local( $_ ); while( @_ ) { $_= shift(@_); if( ... ) { ... } elsif( ... ) { ... ... } elsif( exists $_opt_subs{$_} ) { ... $registry->$_( shift(@_) ); } elsif( ... ) { ... #### $registry->$_( shift(@_) ); #### 17:43 >perl -wE "f(1, 2, 3); sub f { local($_) = shift(@_); my $c = shift(@_); say '$_ = ', $_; say '$c = ', $c; say '@_ = ', @_; }" $_ = 1 $c = 2 @_ = 3 18:07 >