DB<117> use List::MoreUtils qw/part/; DB<118> my $i; part {$i++ %3} a..h => (["a", "d", "g"], ["b", "e", "h"], ["c", "f"]) DB<119> use feature 'state'; part {state $i++ %3} a..h => (["a", "d", "g"], ["b", "e", "h"], ["c", "f"])