Markus Laker (>): > Scalar variables interpolate, but array and hash elements don't: > > m...@edward:~$ perl6 -e 'my $a = 1; say "$a"' > 1 > m...@edward:~$ perl6 -e 'my @a = 1; say "@a[0]"' > @a[0] > m...@edward:~$ perl6 -e 'my @a = 1; say "@a[]"' > @a[] > m...@edward:~$ perl6 -e 'my %h = (one => 1); say %h<one>' > 1 > m...@edward:~$ perl6 -e 'my %h = (one => 1); say %h{"one"}' > 1 > m...@edward:~$ perl6 -e 'my %h = (one => 1); say "%h<one>"' > %h<one> > m...@edward:~$ perl6 -e 'my %h = (one => 1); say "%h{"one"}"' > %hone
This is an oft-reported TODO, but one that's stalling on other future improvements to the quote parser. In the meantime, you can interpolate arrays and hashes through closures. $ perl6 -e 'my @a = 1; say "{...@a[0]}"' 1 $ perl6 -e 'my @a = 1; say "{...@a}"' 1 $ perl6 -e 'my @a = 1,2,3; say "{...@a}"' 1 2 3 $ perl6 -e 'my %h = one => 1; say "{%h}"' one 1 $ perl6 -e 'my %h = one => 1; say "{%h<one>}"' 1 $ perl6 -e 'my %h = one => 1; say "{%h{"one"}}"' 1 HTH, // Carl