# Transposition can be done with the reduced zip meta-operator# on list-of-lists data structuressay [Z] (<A B C D>, <E F G H>, <I J K L>);# For native shaped arrays, a more traditional procedure of copying item-by-item# Here the resulting matrix is also a native shaped arraymy @a[3;4] = [ [<A B C D>], [<E F G H>], [<I J K L>], ];(my $n, my $m) = @a.shape;my @b[$m;$n];for ^$m X ^$n -> (\i, \j) { @b[i;j] = @a[j;i];}say @b;
Output:
((A E I) (B F J) (C G K) (D H L))
[[A E I] [B F J] [C G K] [D H L]]