my %dispatch = ( SQUID => sub { $web_proxy = $proxy_address; }, EZPROXY => sub { if ($proxy_credentials){ ($user_name, $password) = split /\//, $proxy_credentials; $prefix = $proxy_address."user=$user_name&pass=$password&url="; } else { $prefix = $proxy_address."url="; } } ); $dispatch{$proxy_type}->();