我想用 Java 编写一个 Java 解释器,目的是向该语言添加一些其他功能。
我想知道是否已经存在一些使用 javacc 用 Java 编写的 Java 解释器。 那会很酷。
我已经在javacc网站上下载了java 1.5语法和抽象语法树(AST),但问题是AST刚刚构建,但没有填充。事实上它什么也没做。
您知道任何用 javacc 编写的开源 Java 解释器吗?
谢谢,
卢伊克
最佳答案
Do you know any opensource Java interpreter written with javacc ?
简短的回答是:不,我不。
我花了几分钟谷歌搜索,但找不到任何相关内容。不过,也有一些使用 JavaCC 用 Java 编写的其他语言的解释器示例。我还看到了对编译器构建类(class)的引用,该类(class)已经为“microJava”语言编写了一个解释器作为家庭作业练习。
但是想一想。为什么有人要花力气用 Java 编写 Java 编译器/解释器?构建现有工具链已经可以做的事情需要做很多工作。然后还要付出更多努力使其可供其他人使用。这可能解释了为什么你找不到一个。
我建议您从 OpenJDK 代码库开始进行实验……或者通过实现生成字节码或 Java 源代码的编译器。
Dave Newton 提到的 Polyglot 系统(在上面的评论中)是一个用于进行 Java 语言扩展的框架,最终生成常规的 Java 源代码。这很有趣,但我不知道它在这里有什么帮助。
关于java - 用java编写的java解释器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10867473/