To echo DVK's answer, our is just a convenient anti-aliasing tool. Each variable used in these examples is actually called $main::x . Within any lexical domain, you can use our to alias this variable with an abbreviated name in the same domain; the variable is not reset or is deleted externally, but only an alias. This is not like the my keyword, which makes a new variable related to this lexical scope.
source share