#!perl use Benchmark; $main::variable = 'global'; my $variable = 'lexical'; timethese(1, { anon => sub { print "$variable\n"; }, string => 'print "$variable\n";', } ); __END__ Benchmark: timing 1 iterations of anon, string... lexical anon: 0 wallclock secs ( 0.00 usr + 0.00 sys = 0.00 CPU) (warning: too few iterations for a reliable count) global string: 0 wallclock secs ( 0.00 usr + 0.00 sys = 0.00 CPU) (warning: too few iterations for a reliable count)