这是SUN微系统公司(http://soldc.sun.com)面向广大开发人员进行的一个在线调查结果。
您使用什么语言来开发基于WEB的客户端应用程序?
Perl 62.1%
JSP 12.5%
PHP 8.7%
C, C++ 7.1%
ASP 5.7%
其它 3.7%
PERL 编程语言的设计者 Larry Wall把PERL称为后现代语言,它的目的不是要推出一种新的风潮,而是集各种语言的优势,解决实际问题。PERL强大的功能、简洁到极点的语法,使它受到了广大程序员的特别喜爱,成为一种非常流行的工具。使用PERL开发出的应用程序数以万计,公共代码的PERL库函数覆盖了计算机的各个领域,成为其它语言所无法比拟的一个资源,这些库函数都可以在WWW.CPAN.ORG找到。
从语言功能与性能来看,PERL与任何一种现代语言相比都毫不逊色,这主要表现在如下各方面。
1、快速的开发过程
PERL程序是一个文本文件,尽管在运行时实际有一个编译过程,但此过程是不可见的。对程序员来讲,它完全象一个解释性语言,可以随改随测试。
2、极强的可移植性
PERL把有关文件系统和网络的调用归结为其固有函数。PERL已经在几乎所有的平台上都有兼容的版本,这意味者一个PERL程序,只要未用到与操作系统有关的调用,就可以不加修改的在任何平台上运行。PERL甚至统一了目录分隔符,即使在WINDOWS系统下,也可以使用 / 作为目录分隔。
这种可移植性是其它语言,包括JAVA所无法比拟的。
3、极丰富的语言功能和文本处理能力
PERL有很多功能极强而又极为简洁的运算符和固有函数。特别是在文本处理和正规表达式方面的功能,使很多在别的语言里极难解决的操作成为极为简单的操作,比如,用正规表达式分解、替换、匹配字符串等。PERL在这方面的优势已被其它语言如JAVASCRIPT借用,但由于缺乏PERL灵活的语法,正规表达式在JAVASCRIPT里的使用还是麻烦不少。
PERL语言本身支持数组和对应数组,这使程序员能轻易使用复杂的数据结构,用复杂的算法高效的解决各种问题。同样的问题,即使使用C++的STL也要困难若干倍。
PERL不但能处理文字,也能处理二进制数据和C的数据结构。
4、高超的性能
PERL的运行速度大大超过一般解释性语言。与JAVA相比,PERL大约快一个数量级。这是因为PERL实际上是一个编译性语言,PERL脚本在运行前先经过编译、优化,转化为一个运算符树,直接调用C语言实现的各种内部函数。而JAVA则是在一个虚拟机器上解释BYTECODE。
如果有需要,PERL可以被编译为C代码,然后生成可执行文件,这样就省去了每次运行时所需的编译过程,提高启动速度。
5、对OOP的强大支持
PERL支持几乎所有面向对象的编程方法,如类、继承、多继承、虚拟函数、运行时类型确定等等。而且,PERL具有其它语言无法比拟的动态调用功能。目前,几乎所有的PERL库函数都是以OOP的方式,写成类的模块。
6、与C/C++的接口非常方便
PERL里的很多库函数是用C/C++写的,因此PERL有着非常聪明而且功能完善的C/C++开发接口工具。人们可以很容易的把C/C++代码通过动态链接库用于PERL程序。
7、极为丰富的函数库
这是PERL最具有吸引力的地方,全世界的数以万计的程序员在这些年中开发出了大量的源代码,内容涉及各个方面,包括:操作系统、网络通讯、数据类型、数据库接口、用户界面、字符串处理、安全与加密、互联网、服务器、存档压缩、图像处理、邮件与新闻、文件系统、微软视窗等大类,数以千计的模块给程序员提供了极丰富的资源。这些模块都符合PERL的编程标准,从安装到使用都极为简单、方便。PERL本身即带有自动从网上下载模块,自动编译、测试、安装、生成使用说明的工具。
以上是一个对PERL优越性的粗略介绍,还有很多地方在此无法全部提及。
PERL是如此的优秀、实用,它已经被广泛应用在各个方面,特别是在互联网上。上述SUN微系统公司的调查即很好的证明了这一点。