in reply to Re^2: Transpose a matrix of chars
in thread Transpose a matrix of chars

pop only works on an array, not a list; try a list slice:
my $max_col = (sort {$a <=> $b} map $#$_, @rows)[-1];
though in this particular case, you can just reverse the sort and use a list assignment:
my ($max_col) = sort {$b <=> $a} map $#$_, @rows;
Nit: I think of "max_cols" as being maximum number of columns found, but you are wanting one less than that, the maximum column index, so I called it max_col instead. And I think @$_ - 1 is pretty ugly compared to the elegant $#$_ :)