my $n = 0; my $result = undef; eval { $result = 10 / $n; }; if ($@) { print "can't do that!\n"; } else { print "here's your answer: $result\n"; } #### open my $perl, '<', 'perlscript.pl'; my $code = do { local $/; <$perl> }; close ($perl); eval {$perl}; # what am I eval'ing? #### eval_but_dont_execute($some_shaky_perl_code);