use List::Util qw(max); @last_n = @source[max(0, @source - $n) .. $#source];