my @dispatch = ( \&first, \&second, \&third, ); my $start = 0; $start = $recover if $recover > $start; foreach my $index ($start .. $#dispatch) { &{$dispatch[$index]}; }