perl -wle 'use Data::Dumper; my @buckets; my $buckets = 4; @a = 1 .. 14; push @buckets, [ grep defined, @a[ map { $_ * $buckets } 0 .. @a / $buckets ] ] xor shift @a for 1 .. 1 + @a / $buckets; print Dumper( @buckets )' #### Useless use of logical xor in void context at -e line 1. $VAR1 = [ 1, 5, 9, 13 ]; $VAR2 = [ 2, 6, 10, 14 ]; $VAR3 = [ 3, 7, 11 ]; $VAR4 = [ 4, 8, 12 ];