| > LuaJIT supports Lua 5.1 From what I understand, LuaJIT was removed before Lua 5.2 was released, so that wasn't the reason. https://luajit.org/extensions.html LuaJIT supports most of the features of Lua versions after 5.1 with the major missing feature being 64-bit integers, but like modern JS JITs, it actually uses 31/32-bit ints internally most of the time. Even in Lua 5.4 code, you are using implicit rather than explicit ints 99% of the time. I haven't run the code to see, but I'm willing to bet that you can copy all the current benchmark code into LuaJIT and it'll run just fine. > You have no idea. I know with certainty that deoptimizations were applied to at least some scripts. Here's three examples for Common Lisp, StandardML, and Haskell over some time. https://zerf.gitlab.io/ComputerLanguageBenchmarksGame2018Arc... https://github.com/lemire/ComputerLanguageBenchmark/blob/fbe... https://hackage.haskell.org/package/ajhc-0.8.0.4/src/example... Here's a C example from Mike Pall (presumably the same guy who created LuaJIT) that also got the deopt treatment by Isaac Gouy. https://github.com/lemire/ComputerLanguageBenchmark/blob/fbe... It's not a question of if this happens -- only if it affects Lua (I've never checked). |