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
>

Reply via email to