lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]



On 10/07/14 02:35 PM, Roberto Waltman wrote:

On 07/10/2014 07:04, GrayFace wrote:
Lua desperately needs a form of optional static typing, not those gotos with ugly syntax.

Since I used Lua for the first time, (~ 7 years ago,) my "would be nice if" list includes a "freezeType(val)" function that would constrain future assignments to val to its current type. Of course, if the type is table, that is a very weak limitation.

[ What about a freezeValue() ? ]

whatever[key]=value
setmetatable(whatever,{__index={[key]=value},__newindex=function(t,k,v) if getmetatable(t).__index[k] then error() end rawset(t,k,v) end})
whatever[key] = nil