in reply to interchanging variables the tough way

sub invert { return @_ unless @_>1; ($_[0],$_[-1]) = ($_[-1],$_[0]); invert(@_[1..$#_-1]); } @l = (10..20); print "@l becomes "; invert @l; print "@l\n";