Yeah, pretty much the only other thing I would add is that LUA and its ilk bring new meaning to the term "loosely-typed." Variables don't have data types -- just the values stored within them do. So
Lua Code:
local foo = true
foo = 15
foo = "Hello World!"
foo = { "a", "b", "c" }
foo = function() return 42 end
would cause no problems whatsoever.