in reply to Subroutine Return?

As an alternative to shift you can do this which lets you easily see all the args that the sub takes in what order....

sub dotnet_stuff { my ($name, $value) = @_; my $soap = SOAP::Data->name($name => $value)->type('string')->uri($ +uri); return $soap; } # trap for unwary using @_ and forgetting list vs scalar context sub foo { my $arg = @_; # WRONG, scalar context sets $arg = NUM_ARGS in @ +_ 1 my ($arg) = @_; # CORRECT list context DWIM

cheers

tachyon