use strict;
use warnings;
my $f1 = make_adder( 20);
my $f2 = make_adder(555);
printf "%d\n", $f1->(10);
printf "%d\n", $f2->(10);
sub make_adder
{
my $addpiece = shift;
print "\$addpiece = $addpiece\n";
my $inner = sub { return shift() + $addpiece; };
return $inner;
}
####
22:42 >perl 1102_SoPW.pl
$addpiece = 20
$addpiece = 555
30
565
22:42 >
####
Use of uninitialized value in addition (+) at...