use strict 'vars';
...
no strict 'vars';
Provides three kinds of restriction:
- strict 'refs'
-
Generates runtime error if you use any symbolic references.
- strict 'subs'
-
Generates compile-time error if you use a bareword identifier
that's not a predeclared subroutine.
- strict 'vars'
-
Generates compile-time error if you access a variable that
wasn't declared via my,
isn't fully qualified, or wasn't
imported.
use strict by itself (with no import list) is the
most restrictive, causing all possible restrictions to be imposed.
 |  |  |
8.189. Storable |  | 8.191. subs |