没有合适的资源?快使用搜索试试~ 我知道了~
python lexer yacc 手册
需积分: 5 0 下载量 76 浏览量
2024-03-19
13:45:33
上传
评论
收藏 706KB PDF 举报
温馨提示
试读
91页
python lexer yacc 手册,涉及语法分析,词法分析,优化模式,高级调试,案例代码
资源推荐
资源详情
资源评论
目录
0一些翻译约定
1前言和预备
2介绍
3PLY概要
4Lex
4.1Lex的例子
4.2标记列表
4.3标记的规则
4.4标记的值
4.5丢弃标记
4.6行号和位置信息
4.7忽略字符
4.8字面字符
4.9错误处理
4.10构建和使用lexer
4.11@TOKEN装饰器
4.12优化模式
4.13调试
4.14其他方式定义词法规则
4.15额外状态维护
4.16Lexer克隆
4.17Lexer的内部状态
4.18基于条件的扫描和启动条件
4.19其他问题
5语法分析基础
6Yacc
6.1一个例子
6.2将语法规则合并
6.3字面字符
6.4空产生式
6.5改变起始符号
6.6处理二义文法
6.7parser.out调试文件
6.8处理语法错误
6.9行号和位置的跟踪
6.10构造抽象语法树
6.11嵌入式动作
6.12Yacc的其他
7多个语法和词法分析器
-2-本文档使用看云构建
0一些翻译约定
本文是PLY(PythonLex-Yacc)的中文翻译版。转载请注明出处。
如果你从事编译器或解析器的开发工作,你可能对lex和yacc不会陌生,PLY是DavidBeazley实现的基于Python
的lex和yacc。作者最著名的成就可能是其撰写的PythonCookbook,3rdEdition。我因为偶然的原因接触了
PLY,觉得是个好东西,但是似乎国内没有相关的资料。于是萌生了翻译的想法,虽然内容不算多,但是由于能
力有限,很多概念不了解,还专门补习了编译原理,这对我有很大帮助。为了完成翻译,经过初译,复审,排版
等,花费我很多时间,最终还是坚持下来了,希望对需要的人有所帮助。另外,第一次大规模翻译英文,由于水
平有限,如果错误或者不妥的地方还请指正,非常感谢。
0一些翻译约定
英文词汇 翻译约定
token 标记
contextfreegrammar 上下文无关文法
syntaxdirectedtranslation 语法制导的翻译
ambiguity 二义
terminals 终结符
non-terminals 非终结符
documentationstring
文档字符串(python中的
_docstring_ )
shift-reduce 移进-归约
EmptyProductions 空产生式
Panicmoderecovery 悲观恢复模式
0一些翻译约定
-4-本文档使用看云构建
1前言和预备
本文指导你使用PLY进行词法分析和语法解析的,鉴于解析本身是个复杂性的事情,在你使用PLY投入大规模的开
发前,我强烈建议你完整地阅读或者浏览本文档。
PLY-3.0能同时兼容 Python2 和 Python3 。需要注意的是,对于Python3的支持是新加入的,还没有广泛
的测试(尽管所有的例子和单元测试都能够在Pythone3下通过)。如果你使用的是Python2,应该使用
Python2.4以上版本,虽然,PLY最低能够支持到Python2.2,不过一些可选的功能需要新版本模块的支持。
1前言和预备
-5-本文档使用看云构建
剩余90页未读,继续阅读
资源评论
weixin_110
- 粉丝: 103
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功