#! perl use strict; use warnings; my @list = ( 'a' .. 'z' ); my @array_chunk5 = _array_chunk5( @list ); print "Array chunk of 5 =\n"; my $count; print "Chunk ", ++$count, ":\n", join("\n", @$_), "\n\n" for @array_chunk5; sub _array_chunk5 { my @arr = @_; if (@arr > 5) { my @chunk; push(@chunk, shift @arr) for (1 .. 5); return ( \@chunk, _array_chunk5(@arr) ); } else { return \@arr; } }