>From S06: ***** As we saw earlier, "zip" produces little arrays by taking one element from each list in turn, so (0..2; 'a'..'c') ==> my @;tmp; for @;tmp.zip { say } produces [0,'a'],[1,'b'],[2,'c']. If you don't want the subarrays, then use C<each()> instead: (0..2; 'a'..'c') ==> my @;tmp; for @;tmp.map { say } and then you just get 0,'a',1,'b',2,'c'. This is good for for @;tmp.map -> $i, $a { say "$i: $a" } ***** The reference to C<each()> and the use of .map don't match. -'f