来源翻译或自定义翻译?

时间:2011-05-12 21:13:24

标签: compiler-construction lua code-translation

所以,我想知道是否有人对构建源代码转换器与构建自定义解释器的优点有任何想法(希望基于经验)。我正在研究一个解释数学函数的项目,到目前为止,我依靠利用Lua来做我的肮脏工作。我现在需要修改用户提供的输入字符串或为我的DSL构建解释器(例如,我想添加自定义功能,以便您可以切片x [1:2]这样的数组在Lua中是不可能的 - 所以我将其修改为范围(x,1,2)[仅作为示例]。)

我也关注未来的可扩展性。我想让人们在Lua中定义自己的函数,所以如果我构建了一个自定义解释器,我不确定如何合并它。因此,如果有人在源代码翻译器上有任何好的阅读材料和/或构建一个能够调用Lua函数的自定义VM /解释器,我将非常感激!

2 个答案:

答案 0 :(得分:1)

看看Metalua

答案 1 :(得分:1)

如果你想使用Lua,你也可以生成Lua字节码而不是Lua源。缺点是字节码不可移植。