in reply to why doesn't "my ($a,$b)" return a list?
Which is why it doesn't matter what an expression returns - it only matters how its parsed. For example a sub that returns a list doesn't work either in your example:
$ perl -we 'sub list { 1, 2}; sub enum(\@$$) { }; enum my @a, list()' Not enough arguments for main::enum at -e line 1, at EOF Execution of -e aborted due to compilation errors.
Perl sees the comma operator as returning a list in this context, while it assumes that a a variable declarator returns an item.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: why doesn't "my ($a,$b)" return a list?
by LanX (Saint) on Aug 19, 2010 at 14:44 UTC | |
by moritz (Cardinal) on Aug 19, 2010 at 15:06 UTC | |
by LanX (Saint) on Aug 19, 2010 at 15:11 UTC | |
by ikegami (Patriarch) on Aug 19, 2010 at 15:25 UTC | |
by LanX (Saint) on Aug 19, 2010 at 16:02 UTC | |
by ikegami (Patriarch) on Aug 19, 2010 at 17:54 UTC | |
by LanX (Saint) on Aug 19, 2010 at 18:56 UTC | |
by JavaFan (Canon) on Aug 19, 2010 at 17:41 UTC | |
by ikegami (Patriarch) on Aug 19, 2010 at 18:11 UTC | |
by LanX (Saint) on Aug 19, 2010 at 19:50 UTC | |
| |
by JavaFan (Canon) on Aug 19, 2010 at 21:24 UTC | |
|