12.6. Bison — 一个更好的 Yacc
在 Debian 里,有几个软件包提供 Yacc兼容的前瞻性的 LR 解析 或 LALR 解析的生成器。
表 12.15. 兼容 Yacc 的 LALR 解析器生成器列表
软件包 | 流行度 | 大小 | 说明 |
---|---|---|---|
bison | V:11, I:109 | 2253 | GNU LALR 解析器生成器 |
byacc | V:0, I:6 | 160 | 伯克利(Berkeley)LALR 解析器生成器 |
btyacc | V:0, I:0 | 207 | 基于 byacc 的回溯解析生成器 |
可以使用 “info bison
” 查看 bison(1) 的教程。
你需要提供你自己的的 “main()
“ 和 “yyerror()
“.通常,Flex 创建的 “main()
“ 调用 “yyparse()
“,它又调用了 “yylex()
“.
%%
%%