#!/usr/bin/perl use strict; use warnings; sub pa { print join(', ', @_), "\n" } die "usage: $0 " unless $#ARGV == 1; my @IN = 1 .. $ARGV[0]; my $COLS = $ARGV[1]; my @OUT = (); pa @IN; for my $i (0 .. $COLS-1) { for (my $j = $i; $j<=$#IN; $j+=$COLS) { push @OUT, $IN[$j] } push @OUT, "{}" } pa @OUT;