> Fixed: ( foo {$Q} ) + foo {$t}
no, it's not, because this was what I expected.
> + is treated as the unary operator, so
And it would be binary
use strict; use warnings; sub foo (&){ shift->()} sub baz (&){ shift->()} sub bar {3} my ($Q,$t,$res) = (10,3); sub tst { ( foo {$Q} ) + baz {$t}; } use B::Deparse; print B::Deparse->new('-p')->coderef2text(\&tst); print tst();
C:/Strawberry/perl/bin\perl.exe -w d:/tmp/pm/sym.pl { use warnings; use strict; (foo(sub { $Q; } ) + baz(sub { $t; } )); }13
I originally used / which fails without having any unary meaning (it's seen as the start of a m//)
Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery
In reply to Re^2: (SOLVED) parsing problems with prototype blocks (precedence)
by LanX
in thread (SOLVED) parsing problems with prototype blocks (precedence)
by LanX
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |