Python 之父讲述退位原因,以及 Python 的未来将何去何从。
在 Python 社区,Python 的发明者 Guido Van Rossum 被称为 “仁慈的终生独裁者”(BDFL,Benevolent Dictator for Life)。今年 7 月 12 日的时候他突然宣布退位了。
消息一出,一时间震惊了整个 Python 世界。当时他以 PEP 572 改进提案的争吵事件为例,表明其退出缘由。
Guido van Rossum 于 1990 年发明 Python,他相信 Python 这门语言即使少了他的领导也依然能持续发光发热。现年 62 岁的 van Rossum 是一名 Dropbox 的首席工程师,近日他接受了外媒 InfoWorld 的采访。
你为什么辞去 BDFL 职务?
van Rossum:所谓的终生和独裁都仅仅是玩笑。实际上,最近十年,退休的念头都在我脑海里徘徊。
我年龄已经不小了,身体也有一些问题。作为 Python 社区的主要负责人,我需要一遍又一遍地去教社区的其他成员如何开展工作,同时需要一遍又一遍地向 Python 新人解释 Python 的语言哲学,这样超负荷的工作让我的健康状况更为恶化。
事情的引爆点在于一个颇具争议的 Python 改进提案(PEP 572),当我接受这个提案之后,Twitter 等社交媒体上出现了一些中伤我的评论。而更为心寒的是,这些评论居然大多来自 Python 的核心成员,我对他们失望至极!
你能谈谈 PEP 572 提案的好处以及它为什么如此充满争议吗?
van Rossum:该提案提出了一种新的语法,它允许表达式内赋值。总得来说,这是对 Python 语言的一个小补充。开发人员如果需要的话,可以在表达式中进行赋值。
很多编程语言都有这个小功能,比如我熟悉的 C 和 C++。据我所知,Java 和 JavaScript 也支持。它是一种相当小的语法,但在某些情况下,它可以让代码编写变得更容易,并且通过删除冗余能够提升代码的可读性。
很多人觉得自己熟知 Python 的设计理念,他们认为该提案没有遵循 Python 的设计原则。该提案引发争议的另一个原因在于其作者自己的失误,之前几个版本就存在一些严重的问题,因此这一次,即使之前认同其基本理念的人也投了反对票。但这只是一个轻微的句法变化,并不激进。
该特性将包含在哪个版本的 Python 中?
van Rossum:它将出现在 Python 3.8 中。
Python 3.8 将于一年半后发布。此前我们曾发文探讨过为何 Python 的速度如此之慢,在这一更新版本中,Python 3 启动慢的问题将会是 CPython 核心团队主要解决的问题之一。
会有一个新的 BDFL 吗? Python 后续将如何管理?
van Rossum:很抱歉,目前确实无可奉告。
实际上,我给核心开发团体(拥有提交权限的 100 多人)指定了一项任务,让他们思考今后的管理模式并选出新的负责人。他们在解决 Python 问题的同时,需要认真完成该任务。这可能需要长期讨论,短期内很难达成共识。
令我高兴的是他们欣然接受了这个任务,并制定了任务进度表。
他们会在 2018 年 10 月 1 日前完成提案的收集。然后,在 2018 年 11 月 1 日前,他们会从众多提案中选出最终的管理方案。然后到 2019 年 1 月 1 日,他们会整理好管理方案的相关文件,并选举或者任命新的负责人。
如果有提案指出需要 BDFL,则该提案必须对其详细说明,比如如何选举 BDFL,BDFL 任职时长,以及 BDFL 的弹劾机制。我想最快 10 月 1 日,最晚明年 1 月 1 日,将会产生一名新的 BDFL。
Python 的核心成员都有谁?
van Rossum:Python 的核心成员有很多。
比如 Brett Cannon,他是一位真正的大神。又如 Tim Peters,作为我的良师益友,他提出了“Python 之禅”,生动地诠释了 Python 的编程哲学。另外,Barry Warsaw 也是核心开发人员之一。
未来你将在 Python 项目中担任怎样的角色?
van Rossum:我将成为一名普通的贡献者或者核心开发者。偶尔会编写或者审查代码。此外,我将尝试专注于核心开发人员的指导工作上,尤其是新的核心开发人员、女性或者少数民族人士。
因为我个人很推崇核心开发人员的多样性。
作为曾经的 BDFL,你觉得自己的离开会不会吓跑一些 Python 爱好者?
van Rossum:我认为不至于。Python 社区非常健康,Python 核心团队非常强大且充满活力。我相信他们能够克服这点小困难,并在未来几十年里继续推动 Python 前进,如果连这点自信都没有,我也不会辞职。尽管事已至此,但这只是一个小变故,我对 Python 的未来满怀信心。
Python 在过去几年的开发流程是怎样的?你如何看待它未来的发展?
van Rossum:很明显,在过去几年 Python 语言发生了显著的变化。我们为语言和库新增了一些特性,最大的变化可能在于其流行度的剧增。大约五年前,Python 都还是一门非常小众的编程语言。
也正是从五年前开始,随着数据科学的兴起,Python 有幸成为其主要工具,得以广泛流行。这也导致核心开发人员的决策压力剧增,但是总得来说,我们开发和发布的方式都非常稳定。
我们有负责发布的管理人员,主要版本的发布周期大约一年半。对于修复 bug 的版本,根据具体情况,其间隔时间可能是几个月到大半年不等。
我们有非常稳定的 Python 改进提案流程,也许随着社交媒体的发展 PEP 的方式有所改变。但总得来说,除了几年前从 Mercurial 转向 Git 之外,PEP 的流程一直非常稳定,没有出现过问题。
全部0条评论
快来发表一下你的评论吧 !