當前位置:
首頁 > 知識 > Python之父已開始著手改寫Python解釋器,並完成解析器的基礎框架

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

國內PDF地址:https://qiniumedia.freelycode.com/vcdn/1/優質文章長圖3/Building_a_PEG_Parser.pdf


· 番 · 外 · 篇 ·

Python之父已開始著手改寫Python解釋器,並完成解析器的基礎框架

David Beazley (Python Cookbook 作者)

謝謝你把文章更新到medium。我對PEG解析不太了解,所以這很有趣。

Python之父已開始著手改寫Python解釋器,並完成解析器的基礎框架

Guido van Rossum

哦,我知道得也還是太晚了。:-)我想你只需閱讀維基百科的文章和關於packrat解析的論文,很快就會明白的。

Python之父已開始著手改寫Python解釋器,並完成解析器的基礎框架

David Beazley (Python Cookbook 作者)

嗯。。。。。25年後,我想我才剛剛開始了解繼承之類的事情。所以,我還是慢慢來吧;-)。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Python部落 的精彩文章:

在 Django中使用 Redis和Celery處理非同步任務

TAG:Python部落 |