http://qs321.pair.com?node_id=574467

Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

what is the purpose of this declaration?

IF you had multiple packages in one file;
then this would be useful for a file-global variable (the lexical scope)

but what other function does it fulfill?

what does it mean that it does not CREATE a local variable?
is the namespace reserved in the symbol table, but no memory has been allocated for it?
isn't that what my does?
my $var; isn't both a symbol table entry created and memory allocated? our $var; only a symbol table entry?

also it's wierd that you can declare a variable OUR as well as MY
package packA; use strict; our $ourVAR; $ourVAR = "123 ABC"; print " packA ourVAR = $ourVAR \n"; my $ourVAR = "456 RST"; print " packAA ourVAR = $ourVAR \n";

and sure enough, ourVAR gets the new value.
so what am i missing? :-)