用JavaScript编写的Java解析器

用JavaScript编写的Java解析器,java,javascript,parsing,compilation,Java,Javascript,Parsing,Compilation,我正在寻找用JavaScript语言编写的Java源代码解析器的实现。你知道吗?试试引擎?我不知道Java解析器本身,但这里有一些Javascript解析器生成器: 此外,还列出了其他语言编写的PGS和目标Javascript 如果其中一个已经准备就绪,那么您应该能够将Java语法翻译成必要的形式,然后使用PGS生成Javascript中的Java解析器 当然,这只会给你一个解析器。如果您想进行类型分析(正如您的评论所说的),那么解析器就不会这样做 看看哪个可以使用Javascrip

我正在寻找用JavaScript语言编写的Java源代码解析器的实现。你知道吗?

试试引擎?

我不知道Java解析器本身,但这里有一些Javascript解析器生成器:

  • 此外,还列出了其他语言编写的PGS和目标Javascript
如果其中一个已经准备就绪,那么您应该能够将Java语法翻译成必要的形式,然后使用PGS生成Javascript中的Java解析器

当然,这只会给你一个解析器。如果您想进行类型分析(正如您的评论所说的),那么解析器就不会这样做

看看哪个可以使用Javascript作为目标,Java 1.5语法位于


编辑:链接已停止工作-请尝试:)

这是Roman R Redziejowski使用PEG语法的Java 1.7解析器,用于什么目的?解释代码并运行它?用HTML给它着色?将它映射到JSON对象?你到底想做什么?@Jeff在结果中,我想得到某种抽象语法树。@Rocket出于教育目的,我对它感兴趣。首先,我想评估一下现代JavaScript引擎在使用严格类型系统解析语言方面的能力。我想我还没见过这种能力。我见过语法高亮,但从未见过解析器。OP正在寻找另一种方法。Rhino解决了相反的问题:它在Java环境中解析JavaScript。感谢您的回复,Stephen。我正在使用一些解析器生成器。我认为它的性能不足以用C++类似的语法(如java)解析大量代码。不幸的是,“ELIAH”看起来可能是反直觉的,但是生成的解析器往往比手写解析器快。特别是在PGS成熟的情况下。我注意到ANTLR也会用Javascript生成解析器。@Eliah:您似乎很关心复杂(“类似C++的”)语法的解析。您关心什么样的特定语法,为什么您认为现代解析器生成器不能处理它?(C++本身就是一个联盟,给现代解析器生成器带来了真正的麻烦,但Java不是C++)。。。好主意!谢谢你,克里斯。但是,我不确定这种解析器的性能是否足以解析大量的源代码。这不是我所期望的解决方案,但目前它是解决这个问题的唯一解决方案。@Eliah:“……不确定……大量源代码”ANTLR通常产生相当高效的解析器。(我个人的赌注是支持它,而不是反对它。)我怀疑真正找到答案的唯一方法是制作这样一个解析器并尝试它。如果你担心,为什么不使用java或C++来做呢?