官方宣布 Perl 7 计划

oschina
 oschina
发布于 2020年06月25日
收藏 6

Perl 官方宣布了 Perl 7 计划。Perl 7 目前已经在开发中,但是在代码与语法上不会有太大的改变,其本质上是具有现代默认设置的 Perl 5,并为之后进行更大的更改奠定了基础。

具体来说,新的 Perl 7 实际上约等于前两天发布的 Perl 5.32。这里边有个有趣的事实是,Perl 6 已经与 Perl “分家”,并且还变成了名为“Raku”的项目。至于分开 v5 与 v6 的原因,相信大家已经不陌生了:Perl 5 与 Perl 6 存在难以调合的兼容性问题,使得二者基本变成为两种不同的语言,而同样名为 Perl,会让人误以为二者只是版本号上有所不同,这会导致损害 Perl 的形象。由于“Perl” 一词早已普遍被认为是“Perl 5”,因此最终经过讨论,Perl 6 更名了。

Perl 7.0 在 v5.32 的基础上会更合理,具有更现代的默认设置,开发者不必管理太多配置,7.0 中已准备好。目前一些实验性功能可能会稳定下来,但没有大的重写或新特性。

至于模块库 CPAN(Comprehensive Perl Archive Network),已维护模块应该仍然可以在 7.0 中运行,其余的将会有兼容模式,并且会针对几乎所有 CPAN 模块新版本进行测试。而 Perl 7 是否会有单独的 CPAN?这不好说,但是开发人员不想重做可以正常使用的东西,这项变更应该可以通过最少的附带任务进行管理。

Perl 7 会减少什么内容呢?不多。默认情况下,某些功能将被禁用,但同样,其本质上是 Perl 5.32,第一轮可能被削的包括:

  • 间接对象​​符号(indirect object notation)
  • 裸字文件句柄(bareword filehandles),也许标准文件句柄会除外
  • 伪多维数组与哈希(fake multidimensional arrays and hashes),这是旧的 Perl 4 的东西了
  • Perl 4 样式的原型定义(Perl 4-style prototype definitions),使用:prototype()替代

有趣的是,在官方原博客中,谈及为什么从 Perl 5 跳到 Perl 7 而不是 6 的时候(Perl 6 已经改名,那么”Perl 6“这个代号实际上已经空缺出来了),其表示 Perl 曾经雄心勃勃重写 5.8 的计划没了下文……而下一个可用数字为 7,这只是序列上下一个数而已,进行这样的跳跃并非没有先例:

  • PHP 直接从 5 升级到 7
  • Solaris 2.6 跳到 Solaris 7
  • Java 1.4 跳到 Java 5
  • Windows 3.1 跳到 Windows 95(98、ME、2000、XP、Vista、7、8 与 10)
  • ……

“至少不是 Perl 34。"

最后,Perl 7 有望在一年内发布。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:官方宣布 Perl 7 计划
加载中

精彩评论

eastasiasnow
eastasiasnow
虽然perl6改名了,但是还是有一定范围的影响。跳过6,与6割断。
_lhtk_
_lhtk_
似乎是唐宗汉。
W
WindSpeed
希望参数名这一块可以完善一下,现在方法没有参数名用起来很不方便
开源中国丧葬用品店
这一切都要感谢一个叫唐忠汉的人,现在名字叫唐凤,2016年8月,出任台湾省行政院政务委员

最新评论(27

CrabExcavator
CrabExcavator
句柄是应用开发的概念, 可以认为是前后文。
sevk
sevk
6的设计稿太高大上,兼容python语法,还在设计中.
7的设计稿反回5的模式了.
挪鸡鸭
挪鸡鸭
es6不答应
PynixWang
PynixWang
perl php python ruby 可以公用一套vm和object模型,这样可以共享优化。
喜欢lcd屏
喜欢lcd屏
有点类似
自行车丢了
自行车丢了
希望perl7真正的好用,借鉴Python的优点,以下是我期望看到的一些优点吧
1)方便下载的cpan源和第三方插件;
2)去掉冗余的符号,优化编程方法简化易懂,独特方便的perl符号还是要保留的,毕竟是perl的特色;
3)增加简单高效的Web开发框架,希望能比flask更快速,易用;
期待Perl7,看这名字就舒服,哈哈哈
大盘
大盘
你们都在歧视6吗?为什么没6的版本?凭啥?666
开源中国丧葬用品店
名字写错了,反正这货祸害了整个Perl社区
_lhtk_
_lhtk_
似乎是唐宗汉。
返回顶部
顶部