sub foo { my $x=shift; #code.... foo($x+1); } #### sub foo { my $x=shift; START_OF_FOO: #code $x++; goto START_OF_FOO; }