3.3.7 – Local Declarations
Local variables can be declared anywhere inside a block. The declaration can include an initial assignment:
stat ::= local namelist [‘=’ explist]
If present, an initial assignment has the same semantics of a multiple assignment (see §3.3.3). Otherwise, all variables are initialized with nil.
A chunk is also a block (see §3.3.2), and so local variables can be declared in a chunk outside any explicit block.
The visibility rules for local variables are explained in §3.5.
Please login to continue.