in reply to Can I make recursive calls to subroutines?

Yes. Perl will even warn you if the recursion stack gets too deep (I'm currently around 200,000 calls).
use strict; sub head_for_the_deep { my $depth = shift; print "Sinking to level $depth.\n"; head_for_the_deep($depth + 1); } head_for_the_deep(0);