Finally if all variables are purely local and you enforce Lua to behave as a functional language, all Lua scripts will have to pass many input and output parameters explicitly. Calling functions will be much slower. The Lua solution where the environment is implicitly passed as a single implicit parameter to every function call is MUCH faster and more efficient (no need to copy input/output values). and Lua scripts are much simpler (they benefit of the fundamental concept of "closures", which makes Lua scripts really easy to use.
Enforcing the "\" rule is the same as dropping the concept of closures completely. Lua will be much less usable, and scripts will be considerably slower and more complicate to program with tons of additional parameters and additional return values.
With it, you're not at all programming in the same language. You've created a new tricky language, which will have even more bugs (how many input parameters must we pass, and in which order), will be slower, will generate larger bytecodes (coping with all input/output values and transfering them from one function to every subfunction calls), and will also be unsafe (if "\" allows bypassing the functional isolation).