sub time_and_log { my $FQDN = shift; my $start = shift; if (! $start){ # do start stuff $start = time; return $start; } else { # use $start for calculations, # then log } }