my $e = 'my $i=0; sub foo{ print "$i foo\n"; if ($i < 10){ $i++; print "calling foo\n"; foo(); } } foo;'; eval "$e"; print $@,"\n";