34 年了,“杀”不死的 Perl!

2021 年 12 月 24 日 CSDN

作者 | 祝涛       
出品 | CSDN(ID:CSDNnews)

2021年12月18日,Perl迎来了自己34岁的生日。

当程序员聊到Perl会聊些什么呢?在各大平台搜索Perl时,你会发现大家对Perl的态度呈现出一种两级分化的状态,有人对Perl依旧保持着热情,视若珍宝,但也有人对Perl嗤之以鼻,有人甚至写下“Perl正加速走向死亡,也许2023年就会消失”的标题。

生存还是死亡,似乎成为了Perl绕不开的一个话题。


Perl发展历程


拉里·沃尔在1987年开始写作Perl,那时他正在Unisys当程序员,并且在1987年12月18日把1.0版本发布到了comp.sources.misc新闻组。这个语言在接下来的几年内很快地发展起来。

沃尔最早的确把这个语言称为“Pearl”(珍珠),因为他希望自己开发的语言有一个吉利的名字而且要尽量短小好记,他甚至声称早已考虑过所有三个及四个字母的词汇,以及自己妻子的名字Gloria。然而另一门语言PEARL早已存在,为了防止混淆,沃尔才把它改名Perl。


图片来自i-Programmer

Perl 2在1988年发布,增加了更多特性,拥有更好的正则表达式引擎。Perl 3和Perl 4分别在1989年和1991年发布,

而1994年发布的Perl 5则是最重要的一个版本。Perl 5公布了许多个版本:Perl 5.6在2000年发布,Perl 5.8的持续开发贯穿了2002-2008年,5.10在2007年发布,5.12在2010年发布,此后Perl开始采取每月发布一个版本,每年发布一个稳定版本的发布周期。5.14在2011年发布,5.16于2012年发布,5.18于2013年发布。

2000年启动的Perl 6则完全重写了Perl,基于不同的原则,开发者决定先制定语言规格。2015年12月25日,开发了十多年的Perl 6语言在圣诞节正式发布。Larry Wall以Perl 6吉祥物Camelia的名义宣布Perl 6可以在产品中使用,但强调她仍然处于青春期,意味着她有几分成熟了,但还是会有问题。


Perl已死?


许多声称讨厌Perl的人,给出的理由多数是其可读性和维护非常差。

Perl语言的中心思想是:TMTOWTDI(There’s more than one way to do it),条条大路通罗马,解决问题的办法不止一个。Perl具有动态语言的强大灵活的特性,并且还从C/C++、Basic、Pascal等语言中分别借鉴了语法规则,从而提供了许多冗余语法。

也正是因为Perl的灵活性和“过度”的冗余语法,也因此获得了仅写(write-only)的“美誉”,因为Perl程序可以写得很随意(例如,变量不经声明就可以直接使用),但是可能少写一些字母就会得到意想不到的结果(而不报错),许多Perl程序的代码令人难以阅读,实现相同功能的程序代码长度可以相差十倍百倍,这就令程序的维护者(甚至是编写者)难以维护。

同样的,因为Perl这样随意的特点,可能会导致一些Perl程序员遗忘语法,以至于不得不经常查看Perl手册。

TIOBE发布了今年12月的编程语言排行榜,前20名的榜单里,Perl一直处于下游阶段。相比于Python,Perl的境遇显得有些惨淡。当人们讨论“最受欢迎的编程语言”的时候,也很少有人会提到Perl。


Perl未死!


程序员Nikos Vaggalis在一篇博客中表示,Perl仍然有巨大的使用价值,他给出了自己的理由。

多平台支持

甚至不需要使用VM(虚拟机),Perl就可以在上百种计算机平台和系统体系上运行,适用范围广泛,从Solaris到Windows 10,从大型机到便携设备。

多用途

Perl可以应用于计算机科学的所有领域,从数据库使用、正则表达式和解析,到系统管理, 还包括Web和桌面开发等等。Perl还被用于金融、生物以及其他领域。

丰富的语法

Perl拥有自然且富有表现力的语法,是一种成熟的编程语言。Nikos Vaggalis表示:“不要被网上流传的‘脚本语言’的说法所迷惑。我一直不明白为什么它获得了这个标签,但我猜这可能是因为它与Unix shell工具awk、sed等的古老关系。” Nikos Vaggalis认为,掌握这门语言将让许多难事变得有可能,甚至可以进入函数式编程的领域。

与Python相比, Perl的语法没有那么多限制,毕竟它的中心思想是TMTOWTDI(不止一种方法)。“有时候我想耍小聪明,有时候我想打安全牌,有时候我想做些尝试”,Perl提供了这样的环境。

Nikos Vaggalis说:“我记得当Java 8引入lambda表达式和函数式编程时,整个世界都为之惊叹。回顾过去,Perl几十年前就有了函数式编程(参见map、grep、子例程引用、Schwartzian Transform),但是却没有什么反响。”


Perl的未来


Perl仍然有巨大的价值与潜力,但也不得不承认它现在陷入了窘境。如何能让Perl重新流行起来呢?Nikos Vaggalis分享了一项调查,他表示,这个调查或许会给出答案。

问:您未来对Perl的期望是什么?

答:在不影响向后兼容性的情况下进行现代化改造。保持向后兼容性,但使其易使用现代功能。

问:作为个人,该如何支持Perl ?

答:1. 只需简单地使用它!2. 为CPAN做出贡献。(Comprehensive Perl Archive Network,译为“Perl综合典藏网”,“Perl综合档案网”或者“Perl程序库”)

问:Perl社区如何做出贡献?

答:1.推动人们对这门语言的热情;2. 确保CPAN上有足够好的内容来完成任务

问:Perl基金会如何帮助社区实现目标?

答:1. 宣传Perl的功能。将Perl集成到供应商的工具中会很有帮助,Python似乎是许多供应商的宠儿。

2. 招募一些大牌公司加入他们的软件开发工具包。Perl在现代SDK中缺乏存在感,这导致许多人觉得它无关紧要。

Nikos Vaggalis表示,无论什么情况下,Perl的长寿和繁荣都是有保证的。你怎么看呢?

参考链接:

  • https://www.i-programmer.info/programming/perl/15105-perl-turns-34-a-retrospective.html?start=1

  • https://baike.baidu.com/item/perl/851577#2

  • https://zh.wikipedia.org/wiki/Perl

  • https://www.tiobe.com/tiobe-index/

     
     
       

售价8988元起,华为首款纵向折叠屏手机P50 Pocket发布;阿里云回应漏洞风波;Python 3.6生命周期中止|极客头条

Log4j 漏洞还没忙完,新的漏洞又出现了!

AI 真的能够理解人类语言吗?

登录查看更多
0

相关内容

Perl 是一种高级、通用、直译式、动态的程序语言。
联合国教科文组织发布《人工智能伦理建议书》
专知会员服务
48+阅读 · 2021年12月7日
【干货书】《Pydon'ts:编写优雅的Python代码》,263页pdf
专知会员服务
91+阅读 · 2021年11月2日
专知会员服务
18+阅读 · 2021年9月16日
【干货书】Python科学编程,451页pdf
专知会员服务
126+阅读 · 2021年6月27日
专知会员服务
37+阅读 · 2021年4月27日
专知会员服务
90+阅读 · 2020年12月26日
专知会员服务
79+阅读 · 2020年9月28日
【干货书】Python语音计算导论,408页pdf
专知会员服务
98+阅读 · 2020年7月12日
“C 不再是一种编程语言!”
CSDN
0+阅读 · 2022年4月4日
当设计模式遇上 Hooks
阿里技术
0+阅读 · 2021年8月30日
国家自然科学基金
6+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
2+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
Arxiv
0+阅读 · 2022年4月20日
Arxiv
0+阅读 · 2022年4月19日
Arxiv
0+阅读 · 2022年4月17日
VIP会员
相关VIP内容
联合国教科文组织发布《人工智能伦理建议书》
专知会员服务
48+阅读 · 2021年12月7日
【干货书】《Pydon'ts:编写优雅的Python代码》,263页pdf
专知会员服务
91+阅读 · 2021年11月2日
专知会员服务
18+阅读 · 2021年9月16日
【干货书】Python科学编程,451页pdf
专知会员服务
126+阅读 · 2021年6月27日
专知会员服务
37+阅读 · 2021年4月27日
专知会员服务
90+阅读 · 2020年12月26日
专知会员服务
79+阅读 · 2020年9月28日
【干货书】Python语音计算导论,408页pdf
专知会员服务
98+阅读 · 2020年7月12日
相关基金
国家自然科学基金
6+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
2+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
Top
微信扫码咨询专知VIP会员