my @subs; foreach $fn (1,2) { push @subs, sub{print "$fn\n"}; } $fn = 42; foreach $sub (@subs) { $sub->(); } @subs = (); foreach my $fn (1,2) { push @subs, sub{print "$fn\n"}; } $fn = 42; foreach $sub (@subs) { $sub->(); }