Perl-21世纪的语言

Author: 怪力 Date: 2001年 34期

?牐犠罱琒UN微系统公司(http://soldc.sun.com)面向广大开发人员进行了一个在线调查,目的在于了解人们对目前开发工具的欢迎程度,同时可以从一个方面反映出未来技术的发展方向。很快,这个调查有了结果:
  ?牐犌胛誓阌檬裁从镅岳纯⒒赪EB的客户端应用程序?^34020101a^
  ?牐燩erl编程语言的设计者Larry Wall把Perl称为后现代语言,集各种语言的优势以更好地解决实际问题。Perl强大的功能、简洁到极点的语法,使它受到了广大程序员的喜爱,成为一种非常流行的工具。从1987年Perl 1.0面世以来,使用它开发出的应用程序数以万计,公共代码的Perl库函数覆盖了计算机的各个领域,成为其它语言所无法比拟的一个资源,这些库函数都可以在http://www.cpan.org上找到。
  ?牐犔乇鹗撬孀沤昀碢erl 5的开发,使它具有了面向对象编程的功能。从语言功能与性能来看,Perl 5与任何一种现代语言相比都毫不逊色,这主要表现在如下各方面。
  #2?牐?1.快速的开发过程
  ?牐燩erl程序尽管在运行时有一个编译过程,但此过程是不可见的。对程序员来讲,它完全像一个解释性语言,可以随改随测试。
  #2?牐?2.极强的可移植性
  ?牐燩erl已经在几乎所有的平台上都有兼容的版本,这意味者一个Perl程序,只要未用到与操作系统有关的调用,就可以不加修改地在任何平台上运行。Perl甚至统一了目录分隔符,即使在Windows系统下,也可以使用“/”作为目录分隔。
  ?牐牰庵挚梢浦残裕∏∈前↗ava的其它语言所无法比拟的。
  #2?牐?3.极丰富的语言功能和文本处理能力
  ?牐燩erl有很多功能极强而又极为简洁的运算符和固有函数。特别是在文本处理和正规表达式方面的功能,使很多在别的语言里极难解决的操作成为极为简单的操作,比如,用正规表达式分解、替换、匹配字符串等。Perl在这方面的优势已被其它语言如JavaScript借用,但由于缺乏Perl的灵活语法,正规表达式在JavaScript里的使用还是麻烦不少。
  ?牐燩erl语言本身还支持数组和对应数组,这使程序员能轻易使用复杂的数据结构,用复杂的算法高效地解决各种问题。
  ?牐犃硗猓琍erl不但能处理文字,也能处理二进制数据和C的数据结构。
  #2?牐?4.高超的性能
  ?牐燩erl的运行速度大大超过一般解释性语言。与Java相比,Perl的运行速度大约快了一个数量级。这是因为Perl实际上是一个编译性语言,Perl脚本在运行前先经过编译、优化,转化为一个运算符树,并直接调用各种内部函数。而Java则是在一个虚拟机器上进行解释。
  ?牐犎绻行枰琍erl可以被编译为C代码,然后生成可执行文件,这样就省去了每次运行时所需的编译过程,提高启动速度。
  #2?牐?5.对OOP的强大支持
  ?牐燩erl支持几乎所有OOP(Object Oriented Programming, 面向对象的程序设计)的编程方法,如类、继承、多继承、虚拟函数、运行时类型确定等等。而且,Perl具有其它语言无法比拟的动态调用功能。目前,几乎所有的Perl库函数都是以OOP的方式写成类的模块。
  #2?牐?6.与C/C++的接口非常方便
  ?牐燩erl里的很多库函数是用C/C++写的,因此Perl有着非常聪明而且功能完善的C/C++开发接口工具。人们可以很容易的把C/C++代码通过动态链接库用于Perl程序。
  #2?牐?7.极为丰富的函数库
  ?牐犝馐荘erl最具有吸引力的地方,全世界数以万计的程序员在这些年里开发出了大量的源代码,内容涉及各个方面,包括:操作系统、网络通讯、数据类型、数据库接口、用户界面、字符串处理、安全与加密、互联网、服务器、存档压缩、图像处理、邮件与新闻、文件系统等数以千计的模块,给程序员提供了极丰富的资源。这些模块都符合Perl的编程标准,从安装到使用都极为简单、方便。Perl本身即带有自动从网上下载模块,自动编译、测试、安装、生成使用说明的工具。
  ?牐燩erl是如此的优秀、实用,它已经被广泛应用在各个方面,特别是在互联网上。本文开篇所提到的SUN微系统公司的调查就很好地证明了这一点。
  ?牐牭比唬魏问挛锒加兴牟蛔恪D壳埃琍erl 5用于商业开发方面较少,这是由于Perl程序的代码文本文件是公开的,不利于公司保护其商业秘密。同时Perl 5对上下文敏感的语法和大量的运算符对于初学者来说有一定的门槛。相信这些问题在未来的Perl 6中将得到解决,届时功能更强大的Perl将成为一个易学而且功能极强大的软件开发工具。
      ^34020101b^