in reply to How to warp an array by trading X/Y coordinates (rows/columns)

Note that for squares (as in your example), you can rotate the table in place:
#!/usr/bin/perl use warnings; use strict; use Text::Table; my @tab = ( [qw[ One Five Nine Thirteen ]], [qw[ Two Six Ten Fourteen ]], [qw[ Three Seven Eleven Fifteen ]], [qw[ Four Eight Twelve Sixteen ]], ); print 'Text::Table'->new(@tab); for my $i (0 .. $#tab) { for my $j (0 .. $i - 1) { ( $tab[$i][$j], $tab[$j][$i] ) = ( $tab[$j][$i], $tab[$i][$j] +); } } print '-' x 20, "\n"; print 'Text::Table'->new(@tab);

($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,