本月的編程語言排行榜終于發(fā)布了,可謂是千呼萬喚始出來。TIOBE對本期編程榜上做了兩項重大的改變,可能也是本期編程榜 難產的主要原因。第一個是關于語言的分組,新榜單中Lisp、Scheme、Clojure不再被分在一組;另一個則是忽略了Yahoo!的搜索結果(至 少是在未來的幾個月內)。
從結果上看,這兩項改變對本期排行榜的影響還是比較大的,像Go、Ada、PowerShell等語言的排名都有較大的變動。在前10名中,往期一直比較穩(wěn)定的Perl,也下降了一名,盡管沒有Java、C等大眾型語言應用廣泛,但Perl絕對可以稱之為一門優(yōu)秀的語言,本期編程榜我們將為大家介紹Perl的文化。
2010年9月編程榜
Perl的起源
Perl的起源多少有些“意外”。因為其創(chuàng)始人拉里·沃爾并不是有意的要編寫一門編程語言,事實上,拉里·沃爾也不是一位程序員,而是系統(tǒng)專家。當 時拉里·沃爾正在負責一個項目,由于要完成某項工作,盡管拉里·沃爾曾想用awk來完成,但其并不能滿足他的需求,結果就是一門新的編程語言要誕生了。
Perl簡單的哲學
同Objective-C、PHP、C++等語言一樣,生于80后的Perl同樣有C語言的血統(tǒng),同樣具有強大的能力及靈活性,相比于那些高級語言 而言,Perl語言直接提供泛型變量、動態(tài)數組、Hash表等便捷的編程元素。但真正讓程序員們興奮的還是Perl的簡單哲學。
Perl的簡單首先表現在其代碼量上,相比于其他語言,面對一個稍復雜的問題,用Perl解決也許幾行就足以!而編譯Perl程序則更加簡單,你根 本不需要一些特殊的指令。由于Perl繼承了C語言的很多語法規(guī)則,所以它的結構非常容易理解(Perl是一種無類型語言),也正由于此,使得其他語言的 程序員能夠很快的理解Perl。
當然,Perl的編輯器是開源的免費軟件,使用Perl不必擔心費用。而且Perl能在絕大多數操作系統(tǒng)運行,可以方便地向不同操作系統(tǒng)遷移。在7月的編程語言排行榜《這里有支足球隊》一文中,我們也將Perl作為后方的主力,而作為后衛(wèi)球員,基本要求就是要處理球簡單。
Perl 不走尋常路
盡管早期的Perl并沒有多么強大的功能,但其發(fā)展速度非常迅速,從1.0版本到4.0,僅僅同了不到4年的時間,快速發(fā)展的Perl很快便引起了 開發(fā)者的注意。而讓Perl第一次登上大舞臺的,便是Yahoo的兩位創(chuàng)始人David Filo和Jerry Yang。他們用Perl來生成Web頁面,為他們的執(zhí)行Web數據搜集的機器人編寫代碼,并且維護Web地址的數據庫。“我們極大地依賴于 它”,Filo曾經說道。
1994年,Perl經歷了歷史上第一次重大革新——Perl 5發(fā)布。Perl 5是一個完全重寫的版本,它的到來甚至連當時很火熱的《The Ecomomist》雜志都有提到。從此,在Perl的歷史上,Perl 5便開始了長達16年的統(tǒng)治。
16年的發(fā)展,盡管期間有過更新,但Perl一直就沒有更大的變化,這也從側面說明了Perl 5的成功。有人說,Perl是編程語言中少有的按照真實語言的道路發(fā)展的,其吸收了很多語言的優(yōu)點,可以說Perl是一個不折不扣的“混血兒”。
Perl 6 十年磨一劍
在不久前舉行的O'Reilly開源大會上,Perl創(chuàng)始人Larry Wall暗示期待已久的Perl 6可能很快將會最終發(fā)布。
沒過多久,Rakudo和Perl 6開發(fā)團隊就宣布“Rakudo Star”正式發(fā)布,Rakudo Star是Perl 6的第一個可用版本,其主要針對想要嘗試Perl 6的第一批開發(fā)者。Perl語言上一次發(fā)布新版已經是十幾年前的事了。
前10名編程語言趨勢走向
其他語言及排名
下面是第50到100的編程語言排名
(Visual) FoxPro, ABC, Algol, Awk, Bash, BCPL, Beta, CFML, cg, Clean, Clojure, Cobra, Curl, Dylan, Eiffel, Erlang, Factor, Groovy, Icon, Informix-4GL, J, JavaFX Script, JScript.NET, LabVIEW, LabWindows/CVI, Limbo, MAD, MAX/MSP, ML, Modula-3, MS-DOS batch, MUMPS, Natural, Oberon, Object Pascal, Object Rexx, Occam, Oz, PL/I, Progress 4GL, S, S-PLUS, SIGNAL, Smarty, SPSS, VHDL, X10, XBase, XSLT, Z shell
歷屆榜單年度最佳語言
編程語言類別