# New Ticket Created by Zoffix Znet # Please include the string: [perl #132184] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=132184 >
- Seq.skip mutates the invocant: $ ./perl6 -e 'my $s := (1, 2, 3).Seq; $ = $s.skip; say $s' (2 3) - List.skip does not: $ ./perl6 -e 'my $s := (1, 2, 3); $ = $s.skip; say $s' (1 2 3) And the real pain point is that a cached Seq is basically a list. Currently, .skip on a Seq crashes. I tried to fix[^1] the crash, but the fixed version has these inconsistent semantics that `Seq.skip` will either modify the invocant or not, depending on whether the Seq is cached. $ ./perl6 -e 'm: my $s := (1, 2, 3).Seq; $s.cache; $ = $s.skip; say $s' (1 2 3) $ ./perl6 -e 'm: my $s := (1, 2, 3).Seq; $ = $s.skip; say $s' (2 3) I don't see .skip in 6.c tests, so I think we still have a chance to improve it. The question's: how? Any ideas? [1] https://gist.github.com/zoffixznet/98ee33398ac7979c0adc4a4a88696b85