Hi, I'm just starting with Perl 6. I was reading through "Perl 6 and Parrot Essentials" (finally arrived yesterday from Amazon; very happy) and I was wondering what would happen if you had a parameter list that included variables of a different type but the same name (ie, $foo, @foo). I wrote a little test script and ran it through pugs. Here's what I got:
Script: use v6; sub mysub($foo, @foo, %foo) { say "Starting mysub"; say "Printing scalar"; say $foo; say "Printing array"; say @foo; say "Printing hash"; say %foo; say "Leaving mysub\n"; } my $foo = 'foo'; my @foo = qw|foo bar|; my %foo = ( foo => 'bar', foo2 => 'bar2' ); mysub($foo, @foo, %foo); mysub(:foo($foo), :foo(@foo), :foo(%foo)); Output: Starting mysub Printing scalar foo Printing array foobar Printing hash foo barfoo2 bar2 Leaving mysub Starting mysub Printing scalar foo Printing array Printing hash Leaving mysub Just wondering if the language is meant to work that way, or if it's a pugs "feature." Thanks, Michael