lua-users home
lua-l archive

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


I've noticed that Lua never stores floating point values inf, nan, -0.0 in bytecode (in table of constants).
Example:
   local x = 5/4  -- constant 1.25 due to constant folding.
   local y = 1/0  -- constants 0, 1 and DIV instruction.
   local z = -0.0 -- constant 0.0 and UNM instruction.
It seems that Lua intentionally defers possible FP errors until run-time.
Why such approach was implemented?