【发布时间】:2010-10-23 06:30:30
【问题描述】:
我正在寻找一个 Lua 前端编译器,它在编译时进行类型检查,但输出标准 Lua 5.1 字节码(只有运行时类型)。我想要的是相当数量的静态编译时语法分析和可选类型,以便比运行时更快地检测到微不足道的错误。生成的字节码必须与使用标准 LoadString() 编译的现有 Lua 字节码很好地配合。
明确一点——任何差异只会在字节编译时出现。在运行时,字节码不会知道在编译阶段发生了任何不同/不寻常的事情。
我的想法听起来很像 ActionScript;我什至不介意输出 Lua 字节码的 ActionScript 编译器!
有人听说过这样的努力吗?我已经看到一些关于使用 MetaLua 来执行此操作的参考资料,但老实说,我还不够聪明,无法对他们的文档做出正面评价
【问题讨论】:
-
顺便说一下,你说的是强类型,但我认为你的意思是静态类型。它们是有区别的。例如,Python 是强类型的,但是是动态类型的。 C 是弱类型的,但是是静态类型的。
标签: compiler-construction lua static-typing