DC4

use var と our

よく混乱するのでメモ書き。

# our : lexical scope
{
    package Foo;
    our $foo = 'our!';
    package Bar;
    print $foo."\n";  # Foo::fooが参照される。
}
# use vars : package scope
{
    package Foo;
    use vars q($foo);
    $foo = 'vars!';
    package Bar;
    print $foo."\n";  # Foo::fooは参照されない。
}

参考 http://qiita.com/monoknock/items/b9928acd46c878be6ce2