亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Perl > 正文

perl常問題集合之一

2020-10-31 15:21:22
字體:
來源:轉載
供稿:網友
Perl是什么?

  Perl是一個高階程式語言,由 Larry Wall和其他許多人所寫,融合了許多語言的特性。它主要是由無所不在的 C語言,其次由 sed、awk,UNIX shell 和至少十數種其他的工具和語言所演化而來。Perl對 process、檔案,和文字有很強的處理、變換能力,因此舉凡有關快速原型設計、系統工具、軟體工具、系統管理、資料庫連結、圖像程式設計、網路連結,和 WWW程式設計等之類的任務,都特別 適合用 Perl來做。這些特長不但使 Perl成為系統維護管理者和 CGI作者的寵兒,就連數學家、遺傳學家、新聞從業者,甚至企業管理者也都用 Perl,所以或許您也該用。

  誰對 perl提供支援?由誰負責發展?它為什麼是免費的?

  Perl自由開放的發行方式要歸功於發燒前的 Internet的傳統文化及其作者 Larry Wall。Perl是由使用者提供支援?,F在 Perl的核心、標準程式庫、選擇性安裝的模組,以及您現在正在閱讀的使用說明都出自於義務者之手。詳情請見 perl原始碼發行版中所附的 README檔案底部的私人注記。

  值得一提的是,核心發展小組(稱為 Perl Porters)的成員是一群高度熱情奉獻的人仕,全心投入發展出比您所能想像、用錢能買得到還要更好的免費軟體。您可經由 news://genetics.upenn.edu/perl.porters-gw/ 和 http: //www.frii.com/~gnat/perl/porters/summary.html取得關於新近發展計畫 的情報。

  盡管 GNU計畫將 Perl囊括在它的發行中,但是沒有叫「GNU Perl」這樣的東西。 Perl既非自由軟體基金會所創,亦非由其負責維護。Perl的發行條款同時也較 GNU軟體更來得開放。

  如果您愿意,您可以購買商業性的 Perl支援。但對大多數使用者來說,非正式性的支援通常已相當足夠。詳情請見「到哪里可買到商業性的 Perl支援」一問的回 答。

  我該用哪一個版本的 Perl?

  您絕對該用第五版。第四版不但老舊、功能較局限,而且已經不再維護了。它最後 一次的修正 (4.036)是在 1992年。Perl最新的量產發行版本是5.004。等到您 讀這篇文章時,我們可能已經又發行了幾個正式的除錯版本,同時大概又會有些替 下一版 路的實驗版出來。本文由此開始凡提及 Perl語言,皆以目前的量產發行 為準,除非另外特別注明。

  perl4和 perl5各代表什麼?

  perl4 和 perl5 是對 Perl程式語言的兩個不同版本的非正式稱呼,因為說「perl5」要比說「第 5(.004)版的 Perl」要來得簡單。但是有些人誤將其會意為:perl5是一個單獨的語言;這是不正確的。perl5只不過是對第五個主要發行版本(1994年 10 月)常用的稱呼罷了。就像 perl4是指第四個主要發行(1991年 3 月),還有 perl1(1988年 1月)、perl2(1988 年 6 月),以及 perl3(1989年 10 月)。

  5.0的發行基本上是從零開始,所有程式碼完全重新寫過的版本。它已經被模組化、物件導向化、微調、精簡化,及效率化,以致程式碼幾乎已變得和原來的不相同了。盡管如此,使用介面大致上仍然相同,而且和先前的版本之間保持了很高的 一致性。

  為了避免「perl5是什麼語言?」這類的混淆,有些人索性完全避免「perl5」, 而單用「perl」來指稱最近的 perl版本。其實用不著這麼累就是了。

  Perl的發展已穩定了嗎?

  融合了除錯和新功能的量產發行在推出前皆經過廣泛的測試。自 5.000發行以來, 我們平均一年才出版一次量產發行。

  Larry 和 Perl發展小組有時候會修改語言的核心部分,但總是盡一切力量讓新版 和舊版保持一致。因此,盡管不是所有的 perl4 scripts都能在 perl5 之下跑得天衣無縫,因升級而導致按照先前版本的 perl所寫的程式無法使用的情形幾乎不曾發生(除非該程式倚賴已經被去除的 bugs,或使用了極少數新加入的指令來 命名)。

  Perl難學嗎?

  Perl不但容易上手,也容易繼續學下去。它看起來和大多數您可能已接觸過的語言一樣。所以如果您只寫過 C 程式、或 awk script、shell script,或甚至只是 Excel的 macro(巨集),您已經在半路了。

  大多數的任務只需要 Perl語言的一小部分即可完成。發展 Perl程式的座右銘即 是「不只一種方法可以達到」(TMTOWTDI; There's More Than One Way To Do It, 有時讀作「堤姆投迪」)。因此,Perl的學習曲線是既平(易學)且長的 (如果您要的話,有一大堆夠您學的)。

  最後,Perl(通常)算是解譯式的語言。也就是說您寫了程式後不需經由一道中 間的編碼過程即可測試;這讓您可以很快、很容易地測試及除錯。這個方便試驗的 特性又讓學習曲線變得更加平坦。

  有助於修習 Perl 的一些事:UNIX經驗、對幾乎是任何一種程式語言的經驗、了解 regular expressions(正規表示法),以及看得懂旁人寫的程式的能力。如果您有什麼想用 Perl來做的事,那麼可能已經有前人做過了,而且實例通??擅赓M取得。還有別忘了新的 Perl模組。模組在這份 FAQ 的第叁部分有詳細的討論,還有【別忘了您的好朋友】 CPAN,這會在第二部分談到。


  Perl和其他的程式語言比起來如何?例如 Java, Python, REXX, Scheme,或 Tcl?

  Perl在某些地方比較好,某些地方較差。精確地說到底哪些方面好或壞通常視個 人偏好而定,所以在新聞討論群中問這種問題很可能會掀起一場毫無建設性的圣戰。

  要比較各語言的異同最好的方法是試著用不同的語言寫功能相同的程式。各程式語言都各有屬於它們各自的新聞討論群,您可從中學習(但希望您不是去和人辨論吵 架的)。


  我可以用 Perl來做【某種差事】嗎?

  Perl有足夠的彈性和擴充性,從只需要寫短短一行的檔案處理工作到復雜的系統,幾乎沒有什麼做不到的。對有些人來說,Perl的是拿來做寫 shell程式的理想替代品。其他人則用高階的 Perl來替代處理許多原先需要用 C或 C++ 一類的低階語言來達到的程式。哪些差事決定要用 Perl來處理,這一切都得看您(或許還有您的經理...)。

  如果您有一個提供 API的程式庫的話,您可用 C或 C++來寫一個 Perl 延伸,然後便可透過它將程式庫中的任何一部分動態載入您的 Perl主程式中。您也可以 反過來,用 C或 C++來寫主程式,然後以即時動態載入的方式插入一些Perl程式碼,產生一個威力強大的應用程式。

  話雖如此,對解決某些特定的問題,使用小型、專精,專為特殊用途設計的語言總 是比較方便的。 Perl的設計是盡力地滿足各種不同人的需要,因而不特別偏頗任何人。至於特殊功能語言的例子,隨便舉兩個,譬如 prolog 和 matlab 便是。


  哪些場合下不適合用 Perl?

  當您的主管禁止的時候 -- 不過請務必考慮把他們換掉 。

  說真的,如果您已經有用另一個語言寫成的應用程式(而且寫得很好)的時候,或 者是已經有替某些特定的工作設計的語言(例如:prolog, make),這個時候就不 需要用 Perl。

  由於種種因素,Perl大概不太適合拿來做即時內嵌式系統、屬於低層級的作業系統發展工作,例如周邊設備的 drivers或環境轉換碼、復雜的多線共用記憶體應用程式,或非常大的應用程式。您會發現 Perl 本身便不是以 Perl寫成的。

  剛出爐的 Perl純碼編譯器或許可幫忙去除一些上述的限制,但您要了解:Perl在本質上仍是一活性變數語言 (dynamically typed language),而非固性變數 (statically typed)。只要您不將核電廠或腦科手術監視器所用的程式放心地用 Perl來寫,您自然就不會闖禍遭殃。這樣 Larry晚上也可以睡得安穩些 --股市分析程式不在此限 。

  「perl」和「Perl」有什麼不同?

  二者差一個位元。喔,您不是說在 ASCII上的差別??? Larry 現在用「Perl」來代表語言本身,而以「perl」來表示該語言的體現,即目前的解譯器。因此,作者有句幽默小語說:「只有 perl可以解譯 Perl」。要不要遵照這個用法是您的自由。舉一反叁的話,我們可依樣畫葫蘆地說「awk 和 perl」還有「Python 和 Perl」,但卻不可將「awk 和 Perl」或是「Python 和 perl」擺在一起。


  Perl程式應算是 program還是 script?

  都無所謂。按標準術語來講,program指已經由編譯程序編譯好、轉為機器碼,可多次執 行的程式;而 script則是每次執行時都必須透過一個解譯程式來解譯。然而,Perl程式嚴格說來,既非編譯 (compiled) ,亦非解譯式 (interpreted);因 Perl程式可轉譯成位元碼形式存在(可說是某種 Perl虛擬機器 [virtual machine]),或轉譯為完全不同的語言,如 C或組合語言。所以光看原始碼很難 說它到底是替純解譯器、或是 parse-tree解譯器、位元碼解譯器,還是純碼編譯器而寫;因此這題很難給它一個確切的答案。

  JAPH是什麼?
  
  這是過去一些在討論群中自稱 ``just another perl hacker'' 的人的簽名檔,約有一百個比較早期的,可在 http://www.perl.com/CPAN/misc/japh 取得。

  到哪兒可拿到 Larry Wall的智慧諷語 (witticisms)?

  一百多條 Larry的諷語,源自他【在討論群】的 posts或原始碼,可在http://www.perl.com/CPAN/misc/lwall-quotes 取得。

  我要如何取信、說服我的系統管理者/上司/屬下使用第 5/5.004版的 Perl,而不去用其他的語言?
如果您的管理階層或屬下對沒有支援的軟體,或是未正式包含在所購買的作業系統中的軟體存有戒心的話,您可以試著從有助他們自身利益這方面下手。因為如果程式設計師能由善加利用 Perl的結構、功能性、簡單性,和威力而獲得更大的生產力的話,那麼典型的管理者/上司/員工或許便可因而加以說服。此外,使用 Perl,總的來講,和其他語言相較,或許也有助於減少交件的時間。強調這個論 點或許對說服他們會有幫助。

  如果您的專題碰到瓶頸,特別是有關轉譯或測試方面的問題,那麼 Perl可以說絕 對會是一個既可行且快的解決之道。您在當說客的時候,千萬別忘了要提:Perl已 被世界上許多大型的軟硬體公司廣泛、大量地使用,極為可靠、有效。事實上,現 Perl已成為許多 Unix業者所售的作業系統的標準配備了。而且如果您無法在 詳盡的使用說明,包括這份 FAQ之中為您的問題找到解答的話,送封 post 到新聞討論群即可。

  如果您面對反對 perl升級的聲音,那麼告訴他們 Perl發展小組已經完全不再維護或支援第四版的 perl了。perl5的另一個大賣點是它有大量的模組和延伸,可大大減少計畫的發展時間。還有,告訴他們第四和第五版 Perl之間的差異就如 awk 和 C++的差別一樣(嗯,或許沒有差得那麼明顯,但您知道我的意思就好)。如果您想得到支援而且想確保您現在所發展的軟體在未來能繼續工作的話,那麼您得跑有支援的版本。這大概也就是說要跑 5.004 版的,盡管 5.003 版仍算是不錯(它只落後一年、一版)。不過因為有些嚴重的 bugs曾在 5.000 和 5.002版之間被消除,所以您至少應升級到比這幾個版本高才是。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩欧美福利视频| 亚洲资源在线看| 亚洲色图50p| 久久频这里精品99香蕉| xxx欧美精品| 91av在线精品| 日韩精品在线影院| 疯狂做受xxxx高潮欧美日本| 欧美一区二区色| 国产精品揄拍一区二区| 亚洲色图校园春色| 91在线看www| 国产久一一精品| 国产精品美女视频网站| 伊人久久久久久久久久久| 欧美成人精品在线播放| 欧美日韩国产黄| 91在线视频成人| 色悠久久久久综合先锋影音下载| 亚洲国产欧美日韩精品| 久久久国产精品一区| 亚洲乱码国产乱码精品精| 久久色精品视频| 国产精品视频久| 国产精品亚洲美女av网站| 成人亚洲综合色就1024| 欧美香蕉大胸在线视频观看| 精品少妇一区二区30p| 97视频在线观看网址| 色无极影院亚洲| 亚洲影视中文字幕| 国产精品99久久久久久人| 亚洲va欧美va国产综合剧情| 久久免费福利视频| 国产精品美女无圣光视频| 色噜噜久久综合伊人一本| 日韩欧美国产激情| 国产精品视频一区二区高潮| 中日韩美女免费视频网址在线观看| 亚洲精品在线91| 国模极品一区二区三区| 97精品国产91久久久久久| 久久久久久久久久久久久久久久久久av| 亚洲成人中文字幕| 国产精品欧美日韩久久| 亚洲aaaaaa| 国产男女猛烈无遮挡91| 国产精品揄拍一区二区| 国产婷婷成人久久av免费高清| 国产成人精品综合| 国产精品视频成人| 色www亚洲国产张柏芝| 欧美日产国产成人免费图片| 欧美最猛性xxxxx免费| 久久99视频免费| 91成品人片a无限观看| 国产91精品久久久| 国产精品久久久久久av下载红粉| 最近2019中文字幕在线高清| 中日韩美女免费视频网站在线观看| 亚洲国产成人91精品| 亚洲国产日韩欧美综合久久| 国产脚交av在线一区二区| 日本精品在线视频| 国产成+人+综合+亚洲欧美丁香花| 国产亚洲一区二区在线| 亚洲精品欧美极品| 免费不卡欧美自拍视频| 久久国产精品久久久| 91中文在线视频| 欧美精品久久一区二区| 69av在线视频| 欧美精品久久久久久久久| 欧美日产国产成人免费图片| 欧美三级欧美成人高清www| 蜜月aⅴ免费一区二区三区| 午夜精品一区二区三区在线| 亚洲免费高清视频| 在线播放国产一区中文字幕剧情欧美| 精品久久久视频| 美女国内精品自产拍在线播放| 久久精品视频网站| 成人国产精品色哟哟| 色综合亚洲精品激情狠狠| 亚洲一区二区福利| 久久夜色精品国产| 精品久久中文字幕| 青青草国产精品一区二区| 欧美成在线视频| 国产精品444| 成人久久久久久| 中文在线资源观看视频网站免费不卡| 韩国三级日本三级少妇99| 岛国av在线不卡| 国产视频在线一区二区| 亚洲精品98久久久久久中文字幕| 国产91精品网站| 日韩午夜在线视频| 久久精品国产视频| 欧美激情成人在线视频| 久久青草福利网站| 日韩风俗一区 二区| 色视频www在线播放国产成人| 美女av一区二区三区| 综合av色偷偷网| 亚洲成人激情图| 欧美激情小视频| 91精品视频播放| 久久久视频精品| 俺去啦;欧美日韩| 亚洲www在线观看| 久久国产精品久久久久久| 久久久在线观看| 国产成人精品免高潮在线观看| 日韩欧美国产成人| 2019最新中文字幕| 在线视频日本亚洲性| 国产在线不卡精品| 国产一区二区三区在线观看视频| 91av视频在线| 国产精品无av码在线观看| 日韩动漫免费观看电视剧高清| 欧美在线视频在线播放完整版免费观看| 欧美肥老太性生活视频| 亚洲伊人久久综合| 91国产视频在线| 亚洲经典中文字幕| 欧美精品xxx| 亚洲韩国欧洲国产日产av| 中文字幕一区日韩电影| 国产这里只有精品| 欧美日本高清一区| 亚洲一区国产精品| 91精品久久久久久久久中文字幕| 精品无人区乱码1区2区3区在线| 92福利视频午夜1000合集在线观看| 蜜臀久久99精品久久久无需会员| 欧美日韩国产91| 日韩免费看的电影电视剧大全| 日韩国产精品视频| 欧美成人sm免费视频| 欧美日韩黄色大片| 91亚洲精品久久久| 亚洲电影天堂av| 久久久久久国产精品美女| 亚洲大胆美女视频| 91av视频在线| 亚洲片在线观看| 26uuu另类亚洲欧美日本老年| 日韩在线免费视频观看| 欧美性极品xxxx做受| 欧美一区二区三区图| 亚洲欧美精品伊人久久| 精品视频在线导航| 国产视频观看一区| 亚洲国产中文字幕在线观看| 在线观看精品自拍私拍| 国产精品免费看久久久香蕉| 久久国产精品影视| 亚洲永久免费观看| 国产精品成人av在线| 国产综合在线视频| 亚洲电影在线观看| 2019亚洲日韩新视频|