Nein. Statisch hat mit Laufzeit überhaupt nichts zu tun sondern mit dem Verhalten.
Ich sagte statischer Scope ist zur Compilezeit bekannt. Dynamischer Scope wird erst zur Laufzeit bekannt. Das ist dauch die Konvention, die die Perl-Entwickler akzeptiert haben.
Aus der Wikipedia:
With dynamic scope, a global identifier refers to the identifier associated with the most recent environment, and is uncommon in modern languages. In technical terms, this means that each identifier has a global stack of bindings. Introducing a local variable with name x pushes a binding onto the global x stack (which may have been empty), which is popped off when the control flow leaves the scope. Evaluating x in any context always yields the top binding. Note that this cannot be done at compile-time because the binding stack only exists at run-time, which is why this type of scoping is called dynamic scoping.
Und siehe da, das genau das, was zusammengekürzt in der Perl-Dokumentation steht.
A "local" just gives temporary values to global (meaning package) variables. It does not create a local variable. This is known as dynamic scoping.