写点什么

Python 之父:Python 4.0 可能不会有了

  • 2021-06-23
  • 本文字数:1988 字

    阅读完需:约 7 分钟

Python之父:Python 4.0可能不会有了

别把希望寄托在 Python 4.0 上。

 

Python 之父 Guido van Rossum 最近在接受微软 Reactor 的采访时被问到 Python 的未来,以及 Python 是否会发布 4.0 版本。他直言,Python 4.0 可能永远不会出现在世人面前。

 

采访视频链接:https://www.youtube.com/watch?v=aYbNh3NS7jA

 

Van Rossum 表示,他和 Python 的核心开发团队成员对 Python 4 的想法并没有太多兴趣,而且在 2008 年作为最终版本发布 Python 3 时,大家就已经从 Python 2 到 Python 3 的过渡期吸取了足够的教训。

 

他提到:“我对 Python 4 的想法并不感到兴奋,核心开发团队中也没有人真正对此感到兴奋:我们更有可能继续编号,至少会编号到 3.33。”

 

“Python 4,在这个问题上,无论是什么时候,只要核心开发团队一提到它,基本只是当做一个玩笑……我们已经从 Python 3 和 Python 2 中学到很多东西,因此,在严肃的意义上,谈论 Python 4 几乎是一个禁忌。”

 

Python 2.7.18 是 Python 2.7 生命周期中的最后一个版本,于 2020 年 4 月发布。Van Rossum 曾警告说,Python 3 将不会与 Python 2 兼容,那些创建了基于 Python 2 的软件库的依赖关系的开发者无法升级到 3.0 版本

 

这个过程既缓慢又痛苦,持续了好几年,很明显,Van Rossum 和公司并不急于重新开始。

 

“因为 Python 比核心开发者所认识到的更加成功,所以我们应该对 Python 有更深的认识,并且支持从 Python 2 过渡到 Python 3。”van Rossum 说。

 

“以我们的经验来看,我们认为过渡会比较简单,因为我们都是 Python 编程的‘爱因斯坦’,可以在睡梦中把代码从 Python 2 翻译成 Python 3。”

 

Van Rossum 并没有完全排除 Python 4.0 的可能性,但他暗示,这只有在与 C 兼容方面有重大改变时才有可能出现。他说:“我可以想象到,在某个时候,我们被迫放弃某些二进制或 API 与 C 扩展的兼容性……如果不改变语言本身,C 扩展就会有明显的不兼容性;如果我们能摆脱 GIL(global interpreter lock,全局解释器锁);如果其中一种或两种出现,我们可能会被迫调用 4.0,因为 C 扩展层面的兼容性问题。”

 

不过,由于 Python 3.10 预计将在 10 月发布,而 3.11 版本预计将会有一些重大的速度改进,因此,van Rossum 强调说,在尽可能长的时间内,发布编程语言的增量更新是重点。

 

“我们现在有严格的年度发布计划,因此,在 Python 3.10 之后将是 3.11,之后将是 3.12,以此类推。在我们不得不再增加一个数字之前,我们可以上升到 3.99。再加一个数字并非完全微不足道,但还是比从版本 3 到 4 好得多。”

 

“Python 的加速是渐进式的。在 3.11 里会出现一些新的速度,然后我们再用 3.12 和 3.13 加速,以此类推。”

 

Python提速是 Python 核心开发团队的第一要务,van Rossum 在今年的语言峰会上宣布,他的目标是在 3.11 版本中将 CPython 的性能提高一倍

 

van Rossum 在采访中还提到了外部项目为加快语言速度所做的努力,包括 Pyston,这是 Python 3.8.8 的一个实现,在开源之前从 Dropbox 开始的。它的创造者最近发布了 Pyston 2.2,承诺比 CPython 3.8.8 的性能提高 30%。

 

“让 Python 更快,我想说的是,突然又回到新闻头条了。但愿通过我的团队,我能在这方面做些贡献,因为我确实对该领域有所了解。”van Rossum 说。

 

“现在,我们感觉到我们有一年左右的时间来证明我们能够在 Python 性能方面有所作为,3.11 将大大超过 3.10。”

 

Van Rossum 还谈到了他对其他编程语言的看法,他说他非常欣赏 Rust 提高 C++ 代码的能力,并认为 Go 是新“Pythonic”编程语言中最有趣的一种。

 

这位 Python 之父还描述了 Python 如何在近几年开始把 TypeScript 作为事情发展的决定性因素。“你可能已经注意到,在过去的六、七年中,我们一直在向 Python 添加可选的静态类型,也被称为渐进类型。”他说。

 

“事实上,当我们开始这个项目时,我并不知道 TypeScript,所以我不能说我们最初是受 TypeScript 的启发……现在,我们肯定会关注 TypeScript 的示例,有时我们会提出新的特性,因为我们知道某些特性最初是在 Typescript 中没有的,然后会根据用户的需求将其添加到其中,并取得了巨大的成功。”

 

Van Rossum 说,Python Python 仍然在试图重新创建其中一些成功案例。“Anders Hejlsberg 是一个非常聪明的家伙。TypeScript 已经完成了一些 Python 还在等待处理的工作。”

 

译注:Anders Hejlsberg,1960 年 12 月出生于丹麦哥本哈根,曾在丹麦科技大学学习工程学,计算机科学家。Turbo Pascal 编译器的主要作者,Delphi、 C# 和 TypeScript 之父,.NET 创立者。)

 

“从我与 Anders 的交谈中,TypeScript 听起来也是在向 Python 学习,就像 JavaScript 在一些领域向 Python 学习一样。”

 

原文链接:

 

https://www.tectalk.co/why-python-4-0-might-never-arrive-according-to-its-creator/#comment-155

 

延伸阅读:

 

《Python之父:让 Python 快2倍》

2021-06-23 14:4012019

评论 3 条评论

发布
用户头像
C,Java,C++已经离开父亲独立生活,Python什么时候离家。
2021-07-26 11:31
回复
用户头像
2021-07-16 16:29
回复
用户头像
太好了,终于可以来学一门不存在兼容性问题的语言了。
2021-06-30 16:20
回复
没有更多了
发现更多内容

软件架构的定义与分类

穿过生命散发芬芳

架构 11月月更

一文了解 Go 的复合数据类型(数组、切片 Slice、Map)

陈明勇

Go golang go基础 11月月更

Linux 文件基本属性

芯动大师

chmod 11月月更 Linux文件属主 charp chown

第三章 TCP/IP ip地址概念与应用

我叫于豆豆吖.

11月月更

三分建设,七分运营|用现代化安全运营应对数据安全风险

爱科技的水月

China SAFe Day 2022中国规模化敏捷大会圆满落幕!

Scrum中文网

敏捷 safe 规模化敏捷 SAFeDay

Mysql基础超详细讲解

陈老老老板

MySQL 数据库 11月月更

聊聊Mybatis的类型转换注册类TypeHandlerRegistry

急需上岸的小谢

11月月更

华为云GaussDB(for Influx):让智能电网时序数据处理更高效

路过的憨憨

华为

【Python 基础学习】-基础语法

度假的小鱼

11月月更 Python基础语法

2022-11-24:小团在地图上放了3个定位装置,想依赖他们进行定位! 地图是一个n*n的棋盘, 有3个定位装置(x1,y1),(x2,y2),(x3,y3),每个值均在[1,n]内。 小团在(a,

福大大架构师每日一题

golang 算法 福大大

JavaWeb项目部署到腾讯云教学

陈老老老板

腾讯云 javaWeb java; 11月月更

聊聊Mybatis的数据源之获取连接

急需上岸的小谢

11月月更

聊聊Mybatis的类型转换接口TypeHandler

急需上岸的小谢

11月月更

广告业务存储神器:华为云GaussDB(for Redis)

秃头也爱科技

Web3领域首个三消小游戏Matching Game,近30交易量破800万U

BlockChain先知

如何使用Git进行代码托管

我是一个茶壶

git 代码托管 11月月更

支持向量机-非线性SVM与核函数

烧灯续昼2002

Python 机器学习 算法 sklearn 11月月更

【Python 基础学习】-运算符

度假的小鱼

11月月更 Python运算符 Python运算符优先级

云数据库时代,DBA将走向何方?-v4

科技之光

成为数字游民,他们为何「All in Web3」?

One Block Community

程序员 web3 数字游民

支持向量机-探索核函数在不同数据集上的表现

烧灯续昼2002

Python 机器学习 算法 sklearn 11月月更

华为云区块链三大核心技术国际标准立项通过

科技怪授

感恩每一位 RockStar!

StarRocks

数据库

性能测试知识科普(六):三大模型

老张

性能测试 数据模型 业务模型 流量模型

C++--- 类型萃取 ---is_void && is_null_pointer

桑榆

C++ STL 11月月更

kitti数据集在3D目标检测中的入门(二)可视化详解

Studying_swz

人工智能 11月月更

【web 开发基础】PHP 中的可变参数个数的函数 (34)

迷彩

函数 web开发基础 11月月更 可变个数参数的函数

“链游版羊了个羊”Matching Game即将登陆Gate

股市老人

【Python 基础学习】-变量和常量、输入输出

度假的小鱼

11月月更 Python变量常量 Python变量

Python之父:Python 4.0可能不会有了_语言 & 开发_TecTalk_InfoQ精选文章