Indeed. The limit was introduced as a response to this ticket: https://rt.perl.org/Ticket/Display.html?id=126800 The check is probably too aggressive, and indeed, maybe there's nothing wrong with 0 sized arrays. I wonder what was the justification for making the check inclusive. On 2017-08-26 16:15:33, david.warring wrote: > This is OK: > > % perl6 -e'my $size = 2; my @xref[$size,3] = ([1,2,3], [4,5,6]); say @xref' > > [[1 2 3] [4 5 6]] > > But this isn't: > > % perl6 -e'my $size = 0; my @xref[$size,3] = (); say @xref' > > Illegal dimension in shape: 0. All dimensions must be integers bigger than > 0 > in block <unit> at -e line 1 > > % perl6 -v > This is Rakudo version 2017.08 built on MoarVM version 2017.08.1 > implementing Perl 6.c. > > Just seems an unreasonable restriction that the major shape size of an > array can't be zero.
[perl #131965] Shaped arrays can't have zero size
Aleks-Daniel Jakimenko-Aleksejev via RT Sat, 26 Aug 2017 17:12:09 -0700
- [perl #131965] Shaped arrays can't... via RT
- [perl #131965] Shaped arrays ... Aleks-Daniel Jakimenko-Aleksejev via RT
- Re: [perl #131965] Shaped... Brandon Allbery
- Re: [perl #131965] Sh... Brandon Allbery via RT
- [perl #131965] Shaped... Aleks-Daniel Jakimenko-Aleksejev via RT
- Re: [perl #131965... Brandon Allbery
- Re: [perl #1... Brandon Allbery via RT
- Re: [per... David Warring
- Re: ... David Warring via RT