[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Undefined variables returning nil
- From: Petite Abeille <petite.abeille@...>
- Date: Tue, 19 Mar 2013 21:51:51 +0100
On Mar 19, 2013, at 9:23 PM, William Sumner <prestonsumner@me.com> wrote:
> Lua's behavior of silently returning nil for undefined variables can lead to bugs that propagate undetected. Has thought been given to changing this in a major version update, or are there reasons for retaining this behavior? I'm aware of strict.lua, but it only provides safety for global/module scope.
Something like this perhaps?
do
local error = error
local print = print
local _ENV = setmetatable( {}, { __index = function( self, aKey ) error( ( 'Undefined %q' ):format( aKey ) ) end } )
foo = 1
print( 1, foo )
print( 2, bar )
end