>>>>> "Junio" == Junio C Hamano <junkio@xxxxxxx> writes: Junio> my @result = (); Junio> for (my $i = 0; $i < @mapping; $i += 2) { Junio> my ($name, $symbol) = ($mapping[$i], $mapping[$i+1]); Junio> if (defined $params{$name}) { Junio> push @result, "$symbol=$params{$name}"; Junio> } Junio> } Junio> return "$my_uri?" . esc_param(join(';', @result)); Junio> } If you already depend on the LWP package, then the "URI" module does precisely what you're reinventing. my $uri = URI->new("http://host/base/path") $uri->query_form(\%params); my $result = $uri->as_string; And I'd rely on Gisle Aas's experience about constructing these things far more than the thread I've just witnessed here. :) -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 <merlyn@xxxxxxxxxxxxxx> <URL:http://www.stonehenge.com/merlyn/> Perl/Unix/security consulting, Technical writing, Comedy, etc. etc. See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training! - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html