$code .= ";\n1;";
# ... ?
my $perl = qx/ which perl /;
my $result = qx/ perl -c $code /; # CAN this work? If so, how? I'm a shell-tard.
####
my $result = qx/perl -c -e '$code' 2>&1/; # bundle STDOUT and STDERR
####
-e syntax OK
####
my $result = qx/perl -c $tempfile 2>&1/;
####
package My::Eval::Evil;
eval $code;
if ($@) {
....
}
package main; # or whatever package you've been in
####
perl -e 'sub foo {print "foo\n" } package Foo; my $code = "*main::foo = sub {print \"bar\\n\" }"; eval $code; package main; foo()'
bar