日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發(fā)布時間:2024/8/23 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 34 年了,“杀”不死的 Perl! 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

作者 | 祝濤? ? ? ?

出品 | CSDN(ID:CSDNnews)

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

當(dāng)程序員聊到Perl會聊些什么呢?在各大平臺搜索Perl時,你會發(fā)現(xiàn)大家對Perl的態(tài)度呈現(xiàn)出一種兩級分化的狀態(tài),有人對Perl依舊保持著熱情,視若珍寶,但也有人對Perl嗤之以鼻,有人甚至寫下“Perl正加速走向死亡,也許2023年就會消失”的標(biāo)題。

生存還是死亡,似乎成為了Perl繞不開的一個話題。

Perl發(fā)展歷程

拉里·沃爾在1987年開始寫作Perl,那時他正在Unisys當(dāng)程序員,并且在1987年12月18日把1.0版本發(fā)布到了comp.sources.misc新聞組。這個語言在接下來的幾年內(nèi)很快地發(fā)展起來。

沃爾最早的確把這個語言稱為“Pearl”(珍珠),因為他希望自己開發(fā)的語言有一個吉利的名字而且要盡量短小好記,他甚至聲稱早已考慮過所有三個及四個字母的詞匯,以及自己妻子的名字Gloria。然而另一門語言PEARL早已存在,為了防止混淆,沃爾才把它改名Perl。

圖片來自i-Programmer

Perl 2在1988年發(fā)布,增加了更多特性,擁有更好的正則表達(dá)式引擎。Perl 3和Perl 4分別在1989年和1991年發(fā)布,

而1994年發(fā)布的Perl 5則是最重要的一個版本。Perl 5公布了許多個版本:Perl 5.6在2000年發(fā)布,Perl 5.8的持續(xù)開發(fā)貫穿了2002-2008年,5.10在2007年發(fā)布,5.12在2010年發(fā)布,此后Perl開始采取每月發(fā)布一個版本,每年發(fā)布一個穩(wěn)定版本的發(fā)布周期。5.14在2011年發(fā)布,5.16于2012年發(fā)布,5.18于2013年發(fā)布。

2000年啟動的Perl 6則完全重寫了Perl,基于不同的原則,開發(fā)者決定先制定語言規(guī)格。2015年12月25日,開發(fā)了十多年的Perl 6語言在圣誕節(jié)正式發(fā)布。Larry Wall以Perl 6吉祥物Camelia的名義宣布Perl 6可以在產(chǎn)品中使用,但強調(diào)她仍然處于青春期,意味著她有幾分成熟了,但還是會有問題。

Perl已死?

許多聲稱討厭Perl的人,給出的理由多數(shù)是其可讀性和維護(hù)非常差。

Perl語言的中心思想是:TMTOWTDI(There’s more than one way to do it),條條大路通羅馬,解決問題的辦法不止一個。Perl具有動態(tài)語言的強大靈活的特性,并且還從C/C++、Basic、Pascal等語言中分別借鑒了語法規(guī)則,從而提供了許多冗余語法。

也正是因為Perl的靈活性和“過度”的冗余語法,也因此獲得了僅寫(write-only)的“美譽”,因為Perl程序可以寫得很隨意(例如,變量不經(jīng)聲明就可以直接使用),但是可能少寫一些字母就會得到意想不到的結(jié)果(而不報錯),許多Perl程序的代碼令人難以閱讀,實現(xiàn)相同功能的程序代碼長度可以相差十倍百倍,這就令程序的維護(hù)者(甚至是編寫者)難以維護(hù)。

同樣的,因為Perl這樣隨意的特點,可能會導(dǎo)致一些Perl程序員遺忘語法,以至于不得不經(jīng)常查看Perl手冊。

TIOBE發(fā)布了今年12月的編程語言排行榜,前20名的榜單里,Perl一直處于下游階段。相比于Python,Perl的境遇顯得有些慘淡。當(dāng)人們討論“最受歡迎的編程語言”的時候,也很少有人會提到Perl。

Perl未死!

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

多平臺支持

甚至不需要使用VM(虛擬機),Perl就可以在上百種計算機平臺和系統(tǒng)體系上運行,適用范圍廣泛,從Solaris到Windows 10,從大型機到便攜設(shè)備。

多用途

Perl可以應(yīng)用于計算機科學(xué)的所有領(lǐng)域,從數(shù)據(jù)庫使用、正則表達(dá)式和解析,到系統(tǒng)管理, 還包括Web和桌面開發(fā)等等。Perl還被用于金融、生物以及其他領(lǐng)域。

豐富的語法

Perl擁有自然且富有表現(xiàn)力的語法,是一種成熟的編程語言。Nikos Vaggalis表示:“不要被網(wǎng)上流傳的‘腳本語言’的說法所迷惑。我一直不明白為什么它獲得了這個標(biāo)簽,但我猜這可能是因為它與Unix shell工具awk、sed等的古老關(guān)系?!?Nikos Vaggalis認(rèn)為,掌握這門語言將讓許多難事變得有可能,甚至可以進(jìn)入函數(shù)式編程的領(lǐng)域。

與Python相比, Perl的語法沒有那么多限制,畢竟它的中心思想是TMTOWTDI(不止一種方法)?!坝袝r候我想耍小聰明,有時候我想打安全牌,有時候我想做些嘗試”,Perl提供了這樣的環(huán)境。

Nikos Vaggalis說:“我記得當(dāng)Java 8引入lambda表達(dá)式和函數(shù)式編程時,整個世界都為之驚嘆?;仡欉^去,Perl幾十年前就有了函數(shù)式編程(參見map、grep、子例程引用、Schwartzian Transform),但是卻沒有什么反響?!?/p>

Perl的未來

Perl仍然有巨大的價值與潛力,但也不得不承認(rèn)它現(xiàn)在陷入了窘境。如何能讓Perl重新流行起來呢?Nikos Vaggalis分享了一項調(diào)查,他表示,這個調(diào)查或許會給出答案。

問:您未來對Perl的期望是什么?

答:在不影響向后兼容性的情況下進(jìn)行現(xiàn)代化改造。保持向后兼容性,但使其易使用現(xiàn)代功能。

問:作為個人,該如何支持Perl ?

答:1. 只需簡單地使用它!2. 為CPAN做出貢獻(xiàn)。(Comprehensive Perl Archive Network,譯為“Perl綜合典藏網(wǎng)”,“Perl綜合檔案網(wǎng)”或者“Perl程序庫”)

問:Perl社區(qū)如何做出貢獻(xiàn)?

答:1.推動人們對這門語言的熱情;2. 確保CPAN上有足夠好的內(nèi)容來完成任務(wù)

問:Perl基金會如何幫助社區(qū)實現(xiàn)目標(biāo)?

答:1. 宣傳Perl的功能。將Perl集成到供應(yīng)商的工具中會很有幫助,Python似乎是許多供應(yīng)商的寵兒。

2. 招募一些大牌公司加入他們的軟件開發(fā)工具包。Perl在現(xiàn)代SDK中缺乏存在感,這導(dǎo)致許多人覺得它無關(guān)緊要。

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/

往期推薦

虛幻引擎5上的《黑客帝國》全新體驗,愛了愛了

低代碼發(fā)展專訪系列之七:低代碼的火爆需要不一樣的聲音么?

Log4j 第三次發(fā)布漏洞補丁,漏洞或?qū)㈤L存

5G專網(wǎng),路在何方?

點分享

點收藏

點點贊

點在看

總結(jié)

以上是生活随笔為你收集整理的34 年了,“杀”不死的 Perl!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。