sub foo { # begin lexical scope local $x = "in the lexical scope of foo()"; print "\$x in foo() is: ", (defined $x ? $x : "undefined"), $/; bar(); } # end lexical scope sub bar { print "\$x in bar() is: ", (defined $x ? $x : "undefined"), $/; }