Perl6之九 - cross and zip operators

sunnavy
2010-07-26 06:06:44 +0000

二者都是元运算符(metaoperator),参数均为列表。

corss的符号是X,后接一个二元运算符,操作类似于集合中的笛卡尔积。

zip的符号是Z,后接一个二元运算符,与corss的区别见例子

e.g.

 1,2 X+ 3,4     # (1+3, 1+4, 2+3, 2+4), i.e. 4, 5, 5, 6
  X~  # 'ac', 'ad', 'bc', 'bd'

 1,2 Z+ 3,4     # (1+3, 2+4), i.e. 4, 6
  Z~  # 'ac', 'bd'