JavaCC
外观
此條目没有列出任何参考或来源。 (2018年7月10日) |
開發者 | Oracle |
---|---|
当前版本 | 7.0.3(2017年9月22日 | )
源代码库 | github |
编程语言 | Java |
平台 | Java虚拟机 |
许可协议 | BSD |
网站 | javacc |
JavaCC(Java Compiler Compiler)是一个开源的语法解析器生成器和词法解析器生成器,由Java语言编写。
和YACC类似,JavaCC根据由EBNF格式撰写的形式文法生成语法解析器。不同的是,JavaCC生成的是自定向下语法解析器,由于可以向前搜寻k个字符,所以可以用来解析LL(k)文法。同时,JavaCC生成词法解析器的方式和Lex也很像。
另外,JavaCC还提供JJTree等辅助工具帮助使用者构建语法树。
历史
在1996年,Sun Microsystems推出了一个名叫“Jack”的语法解析器生成器。后来,负责“Jack”的开发者创办了自己的公司——Metamata,并将“Jack”改名为“JavaCC”。Metamata最后成为了WebGain的一部分,在WebGain关闭后,JavaCC才移动到了现在的主页。
使用
使用JavaCC构建的软件: