# New Ticket Created by Sam S. # Please include the string: [perl #130930] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=130930 >
say <a b> X~ (1, 2, 3); # (a1 a2 a3 b1 b2 b3) say <a b> X~ |(1, 2, 3); # (a123 b123) say <a b> X~ (1, 2, 3).Slip; # (a123 b123) Those last two seem wrong. It's as if the meta-operator thinks it got four arguments, i.e. as if it was called like: say &[X~]( <a b>, 1, 2, 3 ); # (a123 b123) I think in keeping with the single-argument rule, the X and Z meta-operators should behave as if both sides were bound to a +@ parameter, which would "disarm" the Slip and keep it from messing with the internal algorithm: sub a (+@a) { dd @a }; a |(1, 2, 3); # [1, 2, 3]