in reply to Arrays manipulation

instead of processing the elements of the array one after each other, i create a list out of the elements. then a mod-3 counter puts them in the appropriate slot - that is the (IMO) cool part distinguishing the solution from the one leriksen gave.
use strict; use Data::Dumper; my @array = ('nfs,7,rw', 'afp,12,rro', 'cifs,32,ro', 'dns,5,rw', ); my @splitted_up = (); my $cnt = 0; push @{ $splitted_up[($cnt ++) % 3] }, $_ foreach (split (/,/, join (",",@array))); print (Dumper \@splitted_up);
generated output is the same.