sub foo { my $n = shift; sub f { my $i = shift; return $i+$n; } return \&f; }