JavaCC

✍ dations ◷ 2025-05-19 16:08:04 #Java平台软件,编译器软件

JavaCC(Java Compiler Compiler)是一个开源的语法分析器生成器和词法分析器生成器。JavaCC根据输入的文法生成由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构建的软件:

JavaCC FAQ

相关

  • 弗里德里希·维勒弗里德里希·维勒(德语:Friedrich Wöhler,1800年7月31日-1882年9月23日),德国化学家。他因人工合成了尿素,打破了有机化合物的“生命力”学说而闻名。维勒一生发表过化学论文270多
  • metamorphic变质岩(英语:Metamorphic rock)是经由变质作用所形成的。原岩受到热(温度高于150〜200℃)和压力(1500巴)的作用,其内部的物理和化学性质逐渐变化。原岩可以是沉积岩、火成岩或是变质
  • 毛舌菌毛舌菌(学名:Trichoglossum hirsutum)是地舌菌纲的一种真菌,俗称黑毛舌(英语:black earth tongues)。毛舌菌是一种生长在土壤中的真菌,其子实体为黑色,呈棒状,高度约3-8公分。子实体上
  • 大甲西社抗清事件大甲西社抗清事件,又称大甲西社事件,为台湾原住民中部平埔族群历史上最大的民众起义事件,以大甲西社的林武力(姓名汉化的道卡斯族人)为首,发生于台湾清领时期雍正年间,持续长达一年
  • 修正宪法修正,简称修宪,指的是国家宪法的修改。有一些国家允许修改宪法本文;也有一些国家不能修改宪法本文,但允许在本文后面附上增修条文。宪法修改的方法通常写入宪法本身。大多数
  • 利维坦利维坦(Leviathan),又译巨灵,1874年施约瑟翻译的旧约全书译为利未雅坦,之后的圣经和合本译为鳄鱼,现在的和合本修订版译为力威亚探,圣经思高本译为里外雅堂,圣经现代中文译本译为海
  • 雷姆 (单位)雷姆(全称为人体伦琴当量,英语:roentgen equivalent man,符号为rem)为辐射剂量当量的单位,相当于一伦琴的X光射线或伽码射线。1956年国际放射防护委员会把放射性工作人员的防护标
  • 童玉民童玉民,1897年—2006年,前上海市最长寿男子,享年110岁。学者、农学家、教育家,上海市文史馆馆员。原名秉常,学名王常,浙江慈溪人。精通日语、英语、法语。是中国农业经济学早期人
  • 晋原街道晋原街道,是中华人民共和国四川省成都市大邑县下辖的一个乡镇级行政单位。2019年12月,将王泗镇黄土村、义兴村所属行政区域划归晋原街道管辖,晋原街道子龙街社区、晋王社区、芙
  • 夫馀氏夫馀氏或称馀氏,是一个中国古代的姓氏,为姬姓的一个分支姓氏。一夫概的子孙没有跟去楚国而留于吴国者即以夫余为氏。一说后来夫余氏或称馀氏的成员辗转迁徙,到了中国东北、朝鲜