in reply to Re^3: Lexical closures
in thread Lexical closures
The confusion is that Perl effectively closes over the value of the variable, not a reference to the variable.
I can't explain my results in combination with your claim.sub make_funcs { my $val = shift; (sub {$val * $val}, sub {$val++}) } my($f3, $i3) = make_funcs(3); my($f5, $i5) = make_funcs(5); say $f3->(); say $f5->(); $i3->(); say $f3->(); say $f5->(); __END__ 9 25 16 25
|
---|
In Section
Seekers of Perl Wisdom