【发布时间】:2013-01-16 10:33:07
【问题描述】:
我使用一种类似于 JavaScript 的语言来进行销售点设备编程。这种语言真的很糟糕,我正在尝试用 Java 构建某种框架,将 Java 代码“转换”成这种语言。
我使用了一些正则表达式并直接解析了 Java 文件。现在我发现这可能不是正确/更好的方法,我正在寻找替代方法。有什么工具可以帮助我这样做吗?
我认为我应该使用一些高级反射实用程序,例如 ASM (http://asm.ow2.org/index.html)。性能并不重要,因此可能是这样。 你怎么看?
【问题讨论】:
-
你用的是什么语言?
-
您肯定不会使用常规语言解析上下文无关语言。你需要一个递归下降解析器。
-
也许考虑使用 Parboiled (github.com/sirthias/parboiled) 来构建 AST 并对其进行操作?
-
它被称为“WMLScript”。它类似于 JavaScript,但实现起来很糟糕。感谢您的提示。我会调查的。
-
虽然这不适用于 Java,但该机制可以帮助您了解需要做什么。见:trelford.com/blog/post/fs2js.aspx
标签: java compiler-construction interpreter bytecode