> tmp=0.1+0.2-0.3 > print(tmp) > 5.5511151231258e-17 This is *not* a bug in Lua; it's inherent to the native floating-point arithmetic that Lua uses. See http://lua-users.org/wiki/FloatingPoint http://docs.python.org/tut/node16.html