你好,我是貓哥,這里記錄每周值得分享的 Python 及通用技術內容,本期是特別加更版,聚焦于 Python 官方 2023 年語言峰會的系列博客,
博客原文:https://pythoncat.top/posts/2023-05-31-weekly4
每年在 PyCon US 開始之前,Python 核心開發者、維護者和特邀嘉賓都會聚在一起參加 Python 語言峰會:這是一個為期一天的會談活動,討論 Python 的未來方向,

今年的活動剛結束一個月,PSF 在本周一發布了多篇博客,回顧了峰會上的一些演講內容,本期周刊將這些文章進一步作了摘要,分享給大家:
1、Three Talks on the C API
這是關于 C API 的三場演講,首先,Mark Shannon 和 Guido van Rossum 提及當前 C API 對第三方擴展的支持不夠,經常在升級版本時破壞它們的功能,會上的結論是收集 C API 的問題清單,再制定解決方案,
另一場演講是關于 HPy,它是一個用于撰寫 Python 擴展模塊的新的 API,旨在解決 CPython C API 的一些限制和問題,它的好處是撰寫的擴展模塊可以在不同的 Python 實作中運行,例如 CPython 和 PyPy,但是,演講者想要官方將它作為推薦方案的想法沒有得到支持,一方面的原因是它還不夠完善,更重要的原因則是 Guido 評論的自上而下的方法行不通,HPy 似乎是挺不錯的克服 C API 問題的方案,但它要取代 C API 的地位,還為時尚早,
2、Making the Global Interpreter Lock Optional
我們曾多次介紹過 nogil 專案,比如在周刊第二期就分享了一篇文章,在本次峰會上,nogil 的作者 Sam Gross 介紹了過去一年的進展,給出了 nogil 在性能上取得的令人滿意的資料,還提出了更明確的路線圖,大家最擔心的依然是它提出編譯成兩個發行版、以及導致的除錯困難等問題,(我們曾在 2 月份的一篇文章 中討論過)
3、Towards Native Profiling for Python
Joannah Nanjekye 的演講介紹了 Scalene,這是一個基于采樣的 Python 分析器,可以在報告中區分機器代碼和 Python 代碼,使用 C、C++ 或 Rust 撰寫的 Python 擴展會被編譯為機器代碼,因此很難用采樣的方式分析,Scalene 解決了一些技術難題,是最受歡迎的 Python 分析工具之一,演講者試探性提出將 Scalene 的成果集成到標準庫 cProfile 中,但沒有得到回應,最后,這個庫還被拿來跟 Python 3.12 中引入的 perf 分析器作比對,

4、What is the stdlib for?
Brett Cannon 提出的問題實際是:標準庫應該扮演什么樣的角色?Python 在發展初期自詡“自帶電池”,包含了很多標準庫,但隨著第三方庫越來越豐富以及 PyPI 使得安裝庫非常便利,很多標準庫就不再有價值了,與會者的共識是:標準庫應該專注于幫助用戶撰寫更好的 Python 代碼,這意味正在進行的標準庫“瘦身計劃”不會停,同時,未來的新標準庫會更加規范引入,
5、Pattern Matching, __match__, and View Patterns
模式匹配語法是 3.10 版本的重大特性,但是 Sullivan 認為它的能力相當有限,因此提出了模式匹配的后續發展方向,與會者們普遍認同要增強模式匹配語法,然而,是否要引入一個新的魔術方法 __match__,或者采用別的方案,暫無定論,文中附有很多代碼示例以及關于模式匹配的參考資料,對此話題感興趣的同學可以去了解下,
6、Python on Mobile: State of the Union
Russell Keith-Magee 介紹了 BeeWare,它的目標是在 Android 和 iOS 等移動平臺上輕松運行 Python,專案已得到 Anaconda 的投資支持,演講者的訴求是希望得到 CPython 的“Tier-3”支持,會上討論了 CI 測驗套對移動平臺的支持、sys.platform 在移動平臺應該得到什么值、以及如何在移動平臺發布 CPython 二進制檔案,等等,手機上的 Python,這值得期待!
7、Burnout is Real
Guido 在峰會上聊了開源倦怠、解決倦怠的策略、以及如何避免倦怠等話題,很多時候,開源貢獻者都是在用愛發電,然而大型開源專案還常常有復雜的場景、瑣碎的討論、多樣的人際協作、時常沖突的觀點或想法等,這些都容易讓人疲倦、消磨人的熱情,(PS.如果你關注技術新聞的話,會看到 Rust 社區最近鬧得沸沸揚揚的核心開發者內訌事件,開源社區的發展也是一大難題,慶幸的是這屆峰會反映出 Python 社區是在健康發展中)

8、Lightning Talks
介紹了三場簡短的閃電演講,主題有:讓我們支持 LLVM-BOLT 作為官方功能、在 Python 中實作延遲匯入的機制、讓模塊支持呼叫(已提出 PEP-713),
以上就是今年峰會上討論的重大議題,可以說都是非常有意義的話題,
有不少內容其實已經有了最新進展(畢竟活動已結束一個月),還有一些可能仍需較長時間才能塵埃落定(比如 nogil 和手機上的 Python),
這里再補充兩篇文章,有關于 Fast CPython 專案的進展:《Faster CPython at PyCon, part one》、《Faster CPython at PyCon, part two》,Python 3.11 已經讓大家看到了非常多的性能提升,未來版本更值得期待,
贊助&支持
內容創作不易,如果你覺得有幫助,請隨意贊賞、買杯咖啡或在愛發電進行支持!如果你喜歡本周刊,請轉發分享給其他需要的同學~
另誠邀贊助者,歡迎通過私信聯系,
關于周刊
Python 潮流周刊,精心篩選國內外的 200+ 資訊源,為你挑選最值得分享的文章、教程、開源專案、軟體工具、播客和視頻、熱門話題等內容,愿景:幫助所有讀者精進 Python 技術,并增長職業和副業的收入,
訂閱方式:Python貓 | RSS | 郵件 | Github | Telegram | Twitter

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/553943.html
標籤:Python
上一篇:基于 Web 實作 m3u8 視頻播放的簡單應用示例
下一篇:返回列表
