2019-08-11 23:44:16 IT之家 编辑:琳达 浏览数:44智学网
IT之家7月26日消息 近日,Python之父吉多·范罗苏姆发表一篇名为《PEG Parser》的文章,范罗苏姆表示,他正考虑使用PEG Parser 代替现有的类 LL(1) Parser(名为pgen),来重构Pyt...“”
IT之家7月26日消息 近日,Python之父吉多·范罗苏姆发表一篇名为《PEG Parser》的文章,范罗苏姆表示,他正考虑使用PEG Parser 代替现有的类 LL(1) Parser(名为pgen),来重构Python解释器。
范罗苏姆表示,现在的 pgen 限制了Python语法的自由度,使得一些语法难以实现,也让当前的语法树不够整洁,一定程度上影响了语法树的表意,不能最好地体现设计者的意图。
PEG语法解释器在解析语法的时候,会一次性加载全部代码,所以解释器可以根据任意位置的符号来判断语法的语义。而目前的 LL(1) Parse 解析语法的时候只会向前检测一个符号,来猜测语义,导致部分语法有二义性的表现,进而限制了Python语言的语法定义方式。当然,一次性加载全部代码,也意味着 PEG Parser 需要更大的内存来运行。
针对上述情况,Python解释器处理不了的问题就只能让Python团队不断在代码中加入“特例”来处理这些边缘情况。范罗苏姆称,Python刚出来的时候,内存还是很贵的,LL(1) Parse使用非常合适,但是现在内存价格已经大幅降低,所以用PEG Parser重构Python更加合适。
范罗苏姆表示,用PEG Parser重构Python解释器不会造成语法上的影响,因为底层重构不会影响Python语法。
版权与免责声明:
凡未注明"稿件来源"的内容均为转载稿,本网转载出于传递更多信息的目的;如转载稿涉及版权问题,请作者联系我们,同时对于用户评论等信息,本网并不意味着赞同其观点或证实其内容的真实性;
本文地址:http://www.nghoc.com/news/2019/08/11/120060799.html
转载本站原创文章请注明来源:智学网
“”
外媒报道称,微软已经开始了向运行旧版 Windows 10 操作系统的用户推送 1909 更新。如果您仍在使用 2018...[详细]
“”
IT之家12月10日消息 据外媒获得的一份证券机构Rosenblatt的最新报告显示,后者认为苹果公司目前正在开发多达六...[详细]
“”
法国抗议者抵制“黑色星期五”购物狂潮 在全国抗议亚马逊11-30 08:42 阅读:245 评论...[详细]
“”
IT之家12月5日消息 你有没有好奇过微信拉黑和删除的区别,这是一个困扰很多网友良久的未解之谜,昨天腾讯微信团队官微在微...[详细]
“”
IT之家11月23日消息 ,在今年8月和9月海外宣布V17 Neo和V17 Pro两款手机之后,今天vivo在俄罗斯正式...[详细]