tempad
ReadyGo!技术成就梦想 >>Perl教程 >> perl常问问题集--第一篇

perl常问问题集--第一篇

ReadyGo!技术成就梦想 网络搜索 efish 2008-2-24 2:49:25

目录
篇名
概述
Perl是什麽?
谁对perl提供支援?由谁负责发展?它为什麽是免费的?
我该用哪一个版本的Perl?
perl4和perl5各代表什麽?
Perl的发展已稳定了吗?
Perl难学吗?
Perl和其他的程式语言比起来如何?例如Java,Python,REXX,Scheme,或Tcl?
我可以用Perl来做【某种差事】吗?
哪些场合下不适合用Perl?
「perl」和「Perl」有什麽不同?
Perl程式应算是program还是script?
JAPH是什麽?
到哪儿可拿到LarryWall的智慧讽语(witticisms)?
我要如何取信、说服我的系统管理者/上司/属下使用第5/5.004版的Perl,而不去用其他的语言?
作者及版权事宜

--------------------------------------------------------------------------------

篇名
perlfaq1-概括性的Perl问题(原文版Revision:1.12,Date:1997/04/2422:43:34.17:23:09.中译版$Revision:1.12$$Date:1997/07/1220:41:48$)


--------------------------------------------------------------------------------

概述
本篇涵盖非常概括性、高层次的Perl问题。


--------------------------------------------------------------------------------

Perl是什麽?
Perl是一个高阶程式语言,由LarryWall和其他许多人所写,融合了许多语言的特性。它主要是由无所不在的C语言,其次由sed、awk,UNIXshell和至少十数种其他的工具和语言所演化而来。Perl对process、档案,和文字有很强的处理、变换能力,因此举凡有关快速原型设计、系统工具、软体工具、系统管理、资料库连结、图像程式设计、网路连结,和WWW程式设计等之类的任务,都特别适合用Perl来做。这些特长不但使Perl成为系统维护管理者和CGI作者的宠儿,就连数学家、遗传学家、新闻从业者,甚至企业管理者也都用Perl,所以或许您也该用。


--------------------------------------------------------------------------------

谁对perl提供支援?由谁负责发展?它为什麽是免费的?
Perl自由开放的发行方式要归功於发烧前的Internet的传统文化及其作者LarryWall。Perl是由使用者提供支援。现在Perl的核心、标准程式库、选择性安装的模组,以及您现在正在阅读的使用说明都出自於义务者之手。详情请见perl原始码发行版中所附的README档案底部的私人注记。

值得一提的是,核心发展小组(称为PerlPorters)的成员是一群高度热情奉献的人仕,全心投入发展出比您所能想像、用钱能买得到还要更好的免费软体。您可经由news://genetics.upenn.edu/perl.porters-gw/和http://www.frii.com/~gnat/perl/porters/summary.html取得关於新近发展计画的情报。

尽管GNU计画将Perl囊括在它的发行中,但是没有叫「GNUPerl」这样的东西。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发展小组有时候会修改语言的核心部分,但总是尽一切力量让新版和旧版保持一致。因此,尽管不是所有的perl4scripts都能在perl5之下跑得天衣无缝,因升级而导致按照先前版本的perl所写的程式无法使用的情形几乎不曾发生(除非该程式倚赖已经被去除的bugs,或使用了极少数新加入的指令来命名)。


--------------------------------------------------------------------------------

Perl难学吗?
Perl不但容易上手,也容易继续学下去。它看起来和大多数您可能已接触过的语言一样。所以如果您只写过C程式、或awkscript、shellscript,或甚至只是Excel的macro(巨集),您已经在半路了。

大多数的任务只需要Perl语言的一小部分即可完成。发展Perl程式的座右铭即是「不只一种方法可以达到」(TMTOWTDI;There"sMoreThanOneWayToDoIt,有时读作「堤姆投迪」)。因此,Perl的学习曲线是既平(易学)且长的(如果您要的话,有一大堆够您学的)。

最後,Perl(通常)算是解译式的语言。也就是说您写了程式後不需经由一道中间的编码过程即可测试;这让您可以很快、很容易地测试及除错。这个方便试验的特性又让学习曲线变得更加平坦。

有助於修习Perl的一些事:UNIX经验、对几乎是任何一种程式语言的经验、了解regularexpressions(正规表示法),以及看得懂旁人写的程式的能力。如果您有什麽想用Perl来做的事,那麽可能已经有前人做过了,而且实例通常可免费取得。还有别忘了新的Perl模组。模组在这份FAQ的第叁部分有详细的讨

    

[1]  [2]  [3]  [4]  [5]  上一页  下一页
责任编辑: efish 参与评论 查找更多:
相关文章
perl常问问题集--第九篇 perl常问问题集--第九篇
PerlCGI程式写作常问问题集(1)入门简介 PerlCGI程式写作常问问题集(1)入门简介
PerlCGI程式写作常问问题集(4)安全 PerlCGI程式写作常问问题集(4)安全
Perl简介(适合对C语言有点认识的读者) Perl简介(适合对C语言有点认识的读者)
Perl简介 Perl简介
单行代码的Perl程序 单行代码的Perl程序
Perl常用系统函数 Perl常用系统函数
Perl的基本输入输出 Perl的基本输入输出
Perl的运算符号字符 Perl的运算符号字符
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的ReadyGo.com.cn

分类导航
ReadyGo!技术成就梦想