use warnings; use strict; sub measure_time(&) { my($btime, $etime); $btime = time; &{$_[0]}(); $etime = time; warn "elapsed time was: ", $etime - $btime, " s\n"; } measure_time { sleep 60; }; __END__