use Params::Validate; my ($based_on, $top) = validate_pos(@ARGV, { default => 'tp' }, { default => 1 });