######### Main script ######### index.pl #!C:/perl5.8/bin/perl.exe use CGI qw(:cgi); use Login; use autouse Login => qw(&do_login &do_login2); my $query = get_param('action') || 'default'; my %actions = ( default => \&default, login => \&do_login, login2 => \&do_login2 ); &{ $actions{$query} } ######## Auxiliary script ######## Login.pm sub do_login { # show login page } sub do_login2 { # process login } 1;