Dear Tobias (and Sean), I opened a Github issue: https://github.com/rakudo/rakudo/issues/3881
On Wed, Aug 26, 2020 at 12:12 PM Tobias Boege <t...@taboege.de> wrote: > On Wed, 26 Aug 2020, Tobias Boege wrote: > > Observe: > > > > > 1 ...^ 20 > > (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19) > > > > > 1 ... ^20 # actually C«1 ... (0..19)» > > (1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19) > > > > The documentation [1] states that the C«...» infix is list-associative > > and while I have never seen an example of that (including in that docs > > page), it would explain why it happily takes in your list (1) and then > > your list (0 .. 19) and concatenates them into a sequence, without > > applying any of the usual sequence operator magic. > > And I must correct myself. The associativity has nothing to do with this. > I don't know where my mind was when I wrote that. From the documtation, > I would blame the slurpy argument **@ for that behavior of just taking in > lists and effectively iterating them into a new Seq, and in Rakudo it is > apparently this special candidate: > > # > https://github.com/rakudo/rakudo/blob/e2855aa/src/core.c/operators.pm6#L129 > multi sub infix:<...>(\a, Mu \b) { > Seq.new(SEQUENCE(a, b)) > } > > Best, > Tobias >