use warnings; use strict; my @d; for (my $i = 0; $i<3; $i++) { push @d, eval qq/sub { print "$i\n" }/; } &{$d[0]}(); &{$d[1]}(); &{$d[2]}();