首页
学习
活动
专区
工具
TVP
发布

Python之父已经开始着手改写Python解释器了,并完成了解析器的基础框架

7月28日,Python之父Guido更新了自己的第二篇medium博文《Building a PEG Parser》。

在博文中,Guido说虽然自己还没有完整地理解PEG解析,但是他已经开始着手自己编写一个了。不仅如此,他还在博文中分享了他构建自己的“第一个PEG Parser”的思路和过程。

Guido并不想实现一个通用的PEG Parser,因为实际上开源界已经有很多通用的PEG Parser了,比如TatSu,一个用Python编写并生成Python代码的PEG Parser。Guido专注于编写一个Python可以使用的PEG Parser,并且这可能比通用的PEG Parser更复杂。比如标识化这一步,由于Python使用缩进来决定层次关系,所以在标识化这一步中就需要一个堆栈来记录层级关系。另外,处理Python的换行和引号也并不轻松。对于Python代码的标识化,CPython提供了两套可用的工具,一套是C编写的内部使用的,另一套是提供在标准库中的纯Python编写的,并且和内部使用的完全一致的标识化工具。Guido这次直接使用了标准库中的标识化工具。

Guido在博文中,对自己的思路进行了详细的阐述,并配以简化的代码来辅助说明,俨然一副编写教程的样子。国内的小伙伴如果有参与某类编程语言的开发及维护的,可以翻看下Guido的博文哦~

英文原文地址:https://medium.com/@gvanrossum_83706/building-a-peg-parser-d4869b5958fb

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190730A03OMU00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券