PERL腳本語言的特征是什么?
Perl 最初的設(shè)計(jì)者為拉里·沃爾(Larry Wall),它于1987年12月18日發(fā)表。Perl借取了C、sed、awk、shell scripting以及很多其他程序語言的特性。 Perl 一般被稱為“實(shí)用報(bào)表提取語言”(PracticalExtraction andReportLanguage),雖然有時(shí)被稱做“病態(tài)折中垃圾列表器”(PathologicallyEclectic Rubbish Lister)。它是術(shù)語,而不僅僅是簡(jiǎn)寫,Perl的創(chuàng)造者,LarryWall提出第一個(gè),但很快又?jǐn)U展到第二個(gè)。那就是為什么“Perl”沒有所有字母都大寫。沒必要爭(zhēng)論那一個(gè)正確,Larry 兩個(gè)都認(rèn)可。 你也可能看到“perl”,所有的字母都是小寫的。一般,“Perl”,有大寫的 P,是指語言本身,而“perl”,小寫的 p,是指程序運(yùn)行的解釋器。 Perl 的特點(diǎn) Perl的解釋程序是開放源碼的免費(fèi)軟件,使用Perl不必?fù)?dān)心費(fèi)用。Perl能在絕大多數(shù)操作系統(tǒng)運(yùn)行,可以方便地向不同操作系統(tǒng)遷移。 Perl 是一種能完成任務(wù)的語言。從一開始,Perl 就設(shè)計(jì)成可以把簡(jiǎn)單工作簡(jiǎn)單化,同時(shí)又不失去處理困難問題能力的語言。它可以很容易操作數(shù)字,文本,文件和目錄,計(jì)算機(jī)和網(wǎng)絡(luò),特別是程序的語言。這種語言應(yīng)該很容易運(yùn)行外部的程序并且掃描這些程序的輸出獲取感興趣的東西。而且它還應(yīng)該很容易能把這些你感興趣的東西交給其它程序做特殊的處理。當(dāng)然,這種語言還應(yīng)該很容易在任何現(xiàn)代的操作系統(tǒng)上可以移植地編譯和運(yùn)行。 Perl 基本語法 標(biāo)量定義,以$號(hào)開頭,如:$num =1; 數(shù)組定義,以@開頭,如:@array = (1,2,3); 數(shù)組元素調(diào)用 @array[index],其中index表示數(shù)組下標(biāo),如上例,@array[0]的值是1 散列定義,以%開頭,如:%hash=("a",1,"b",2); 散列調(diào)用 %hash,其中key表示鍵值,如上例,%hash{"b"}的值是1 Perl 的哲學(xué) Perl追求的是簡(jiǎn)單, 解決一個(gè)一般的問題用它幾行代碼就完成了. 一個(gè)稍復(fù)雜一點(diǎn)的問題代碼也不會(huì)超過一屏! 事實(shí)上, 大多數(shù)人用Perl寫的程序大多都沒超過100行. Perl 最初是當(dāng)做一種 Unix 的膠水語言設(shè)計(jì)的,但是她早就移植到大多數(shù)其它操作系統(tǒng)里了。因?yàn)?Perl 幾乎可以在任何地方運(yùn)行,所以 Perl 可以說是當(dāng)今最具有移植性的編程環(huán)境。要想寫可移植的 C/C++ 程序,你得在程序里加上一大堆 #ifdef 標(biāo)簽來區(qū)分不同的系統(tǒng)。要想寫可移植的 Java 程序,你必須理解每種新的 Java 實(shí)現(xiàn)的特質(zhì)。要想寫可移植的 shell,你可能要記住每條命令在每種操作系統(tǒng)上的語法,走運(yùn)的時(shí)候你可能可以找到一些公共的東西。而要想寫可移植的 Visual Basic 程序,那么你只需要對(duì)“移植”有個(gè)更靈活的定義就可以了。 我們很高興的是 Perl 避免了所有這些問題,同時(shí)還保留了這些語言中的許多優(yōu)點(diǎn),同時(shí)還有一些自己的特色。Perl 的特色來自許多方面:它的特性集的工具,Perl 社區(qū)的創(chuàng)造性,以及開源運(yùn)動(dòng)的大環(huán)境。不過,許多這些特性都是混合的東西;Perl 的身世復(fù)雜,它總是把事物看成是優(yōu)點(diǎn)的不同方面,而不是弱點(diǎn)。Perl 是“背黑鍋我來”的語言。如果你覺得自己陷入一團(tuán)亂麻之中,非常渴望自由,那么請(qǐng)使用 Perl。 Perl 是跨文化的。Perl 的爆炸性增長(zhǎng)很大程度上是因?yàn)槟切┣?Unix 系統(tǒng)程序員的渴望,他們希望從他們的“老家”帶著盡可能多的東西。對(duì)于他們而言,Perl 是可移植的 Unix 文化蒸餾器,是"此路不通"的沙漠中的綠洲。從另外一個(gè)角度來看,Perl 還可以從另外一個(gè)方向運(yùn)轉(zhuǎn):在 Windows 上工作的 web 設(shè)計(jì)者通常會(huì)非常開心地發(fā)現(xiàn)他們的 Perl 程序可以不加修改地在 Unix 服務(wù)器上跑。 補(bǔ)充:更多知識(shí) Web Hosting Talk 中文站