sub drill_down { my $i=@_/2; @_[ @_%2 ? $i : ($i-1, $i) ]; } #### return @_ if @_ < 3; #### drill_down(@sorted); # as the last statement in your sub #### my @middle = drill_down(@sorted); return @middle;