On Tue Jul 27 14:27:33 2010, coke wrote:
> On Thu Mar 19 06:28:19 2009, masak wrote:
> > <amoc> rakudo: my @a = <one two>; @a[-1] = 'zero'; @a.perl
> > <p6eval> rakudo f8b6ae: RESULT«"[\"one\", \"two\"]"»
> > <amoc> it is a bug, right?
> > <masak> amoc: [*-1]
> > <amoc> rakudo: my @a = <one two>; @a[*-1] = 'zero'; @a.perl
> > <p6eval> rakudo f8b6ae: RESULT«"[\"one\", \"zero\"]"»
> > <masak> S09.
> > <jnthn> I think -1 is meant to be a syntax error these days.
> > <masak> jnthn: why?
> > <masak> it's just out of bounds.
> > <jnthn> std: @foo[-1]
> > <p6eval> std 25906: OUTPUT«##### PARSE FAILED #####␤Obsolete use of
> > [-1] subscript to access final element; in Perl 6 please use [*-1]
> > instead [...]
> > <amoc> from
> > http://perlcabal.org/syn/S09.html#Negative_and_differential_subscripts
> > <masak> oh.
> > <amoc> it says: "Using a standard index less than zero prepends the
> > corresponding number of elements to the start of the array and then
> > maps the negative index back to zero"?
> > <jnthn> masak: Because STD.pm says so. But yes, you can declare an
> > array with different indexes too...
> > <jnthn> So I'm not sure what'd happen there.
> > <masak> shall I report this as a rakudobug?
> > <jnthn> You can. We're inconsistent with STD.pm there, so it's
> > probably worthy of a ticket.
> > <masak> someone put together an example for STD with a
> > different-indexes array, and see what it says! :)
> > * masak submits
> 
> This currently fails, but not in the same manner as STD:
> 
> 17:26 < [Coke]> rakudo: my @a = <one two>; @a[-1] = 'zero'; @a.perl
> 17:26 <+p6eval> rakudo ac8a2a: OUTPUT«Cannot modify readonly value␤  in
>                 '&infix:<=>' at line 1␤  in main program body at line
>                 22:/tmp/Udd9hXZOxN␤»

Another slight change:

20:08 < [Coke]> rakudo: my @a = <one two>; @a[-1] = 'zero'; @a.perl
20:08 <+p6eval> rakudo 38165a: OUTPUT«Cannot assign to a non-container␤  in 
                block <anon> at /tmp/55lCbf7U7p:1␤  in <anon> at 
                /tmp/55lCbf7U7p:1␤»

-- 
Will "Coke" Coleda

Reply via email to