print "In main scope $_\n" for 1..10; for (1..10) { print "In scoped block:$_\n"; } #### D:\Development>copy con deparse.pl use strict; my $x=$_ foreach 1..10; print $x; ^Z 1 file(s) copied. D:\Development>copy con deparse.out.pl use strict; ^Z 1 file(s) copied. D:\Development>perl -MO=Deparse deparse.pl >>deparse.out.pl deparse.pl syntax OK D:\Development>perl deparse.pl D:\Development>perl deparse.out.pl Global symbol "$x" requires explicit package name at deparse.out.pl line 5. Execution of deparse.out.pl aborted due to compilation errors. D:\Development> #### D:\Development>perl -MO=Deparse -e "use strict; my $x=1; my $y=1 if $x; print $x.' '.$y;" my $x = 1; my $y = 1 if $x; print $x . ' ' . $y; -e syntax OK D:\Development>perl -MO=Deparse -e "use strict; my $x=10; my $y=$x while ($x--); print $x.' '.$y" my $x = 10; my $y = $_ while $x--; print $x . ' ' . $y; -e syntax OK #### D:\Development>perl -MO=Deparse -e "use strict; my $x=1 for 1; print $x" foreach $_ (1) { my $x = 1; } print $x; -e syntax OK D:\Development>perl -e "use strict; my $x=1 for 1; print $x"