This introduces several new ideas to me, so I played with
it for more than a quarter hour, at a console command-line. I tried in 5.005_003
and in 5.6, evaluating a second eval(), getting the same
behavior as for the first eval(). I guess it clarifies the behavior, and
hopefully it's contributory to an interesting thread.
in reply to Perl is psychic?!
> perl -wle '
q(foo) =~ m/.*/;
print $&; q(snarf) =~ m/.*/ ; eval <>;
#prints 'foo', not 'snarf' and waits for input;
And, I think this is amusing:
> perl -le ' my $incr = 0;
q( print $incr++, $& and " stew" =~ /.*/ and eval $& until $incr > 10)
+ =~ /.*/;
eval $&; # prints '0 ( guesswhat) '..'10 stew' (versions differ on
edited after first posting, to simplify examples