我认为 LuaJIT 很棒,现在我也看到了 eLua。
我只是好奇嵌入式程序员何时会为嵌入式系统选择一个而不是另一个?
这取决于您所说的“嵌入式系统”是什么意思。您是指“移动应用程序”还是“将其放入微波炉”?
eLua 是针对后者的。它用于在相当低的级别为特定硬件设备编写代码,但仍使用 Lua。您不一定要将它用于其他任何事情。
LuaJIT 并非专门针对任何特定类型的嵌入式编程。事实上,LuaJIT 在 ARM 设备中流行的唯一原因是它的 JIT/解释器能够识别浮点数和整数之间的区别(许多 ARM 芯片往往具有糟糕的浮点性能)。标准的 Lua 解释器不提供这一点,因为它是为浮点运算相当快的系统设计的。
Luajit 与 Lua 和 eLua 不同。与 Luajit 相比,这些解释器相当慢 - 所以嵌入式 Luajit 会更理想。
http://luajit.org/performance_arm.html
另外使用 ffi 您可以在 Lua 中调用其他模块函数。Luajit 也是符合 Lua 5.1.4 的字节码