>Local variables may be
declared anywhere inside a block. The declaration may include an initial
assignment:
stat ::= local namelist ['=' explist1]
If present, an initial
assignment has the same semantics of a multiple assignment (see §2.4.3). Otherwise, all variables are
initialized with nil.
A chunk is also a block
(see §2.4.1), and so local variables can be
declared in a chunk outside any explicit block. The scope of such local
variables extends until the end of the chunk.
The visibility rules for
local variables are explained in §2.6.
|