Perl五年来第一次发布新版本,20年已如残烛。

CSDN 12月28日消息】 国际消息 Perl编程语言于当地时间圣诞节期间发布了新版本Perl 5.10,这也是从2002年至今这门“广为流传的动态语言”的第一次。Perl 5.10添加了新的语言特性和新改进的Perl 解释器。

       Perl 是由 Larry Wall 创造的一门动态程序语言,首次发布于1987 年。在20年的历史里,Perl 借用了多种语言如C ,shell(sh), AWK, sed 以及Lisp 的特性。Perl 已经成为几乎所有 Unix 系统标准 配置 之一,并可以在许多的 操作系统 上运行,包括 Windows,Mac OS X,Solaris,z/OS,os400,QNX 以及 Symbian。

       Perl的语法灵活性有时使它变得难以阅读,而像Python由于固定的语法结构在这些年已经胜过了Perl。而且Web开发的脚本语言比如PHP、Ruby等也已经开始渐渐取代了Perl一度拥有的优势。20年来Perl的境况每况愈下,到今天已如残烛。

新特性

显著的新语言特性。最令人兴奋的改进是全新的智能匹配操作符(smart match operator) 。该操作符实现了一种全新的比较方式,而其具体作用是随操作符接受的输入而有所不同的。举例而言,要看标量 $needle 是否存在于数组 @haystack 中,只要使用新的 ~~ 操作符:

 if ( $needle ~~ @haystack ) ...

其结果将会"正如你所愿",而这正是 Perl 语言一贯的 标志 性做法。在此操作符的基础之上,Perl 语言终于有了 switch 语句 ,而且它比任何传统的 switch 语句,像 C,C++ 和 JAVA 拥有的那些,要先进得多。

正则表达式也变得更加强大了。程序员们现在可以在正则表达式中使用用命名的捕获变量 (named captures) ,而不是数括号来获知匹配的捕获变量。Perl 5.10 还支持嵌套匹配,使得我们现在可以使用许多有效的匹配结构,尤其是在句法解析时。尽管添加了新的特性,正则表达引擎在很多方面做了精心调整并且提高了速度。

他的改进包括可在函数内持续的状态变量(state variable) ,使用户可以自己调整 Perl 运行方式的用户自定义 pragmata ,一个 "定义或" 的操作符 ,为翻转对象(inside-out objects)提供的符号哈希表(field hashes) ,以及改进的错误信息。

解释器的改进

并非只有程序语言的改进,Perl 解释器本身已变得更快,更少内存占用(memory footprint) ,还有了一些 UTF-8 及线程方面的改进。Perl 的安装方式变成了可移动的,这给系统管理员以及操作系统 制作 者们来说实在是大好消息。源代码现在变得更易移植,很多小 bug 也被顺手改正了。所有这一切都造就了目前为止最棒的Perl.。

想要了解关于5.10所有的改动,请看 Perl 5.10 源代码版本中自带的perldelta 文档。(link: http://search.cpan.org/dist/perl-5.10.0/pod/perl5100delta.pod) 想看简易一点的介绍的话, Ricardo Signes' 的讲义 Perl 5.10 For People Who Aren't Totally Insane (link: http://www.slideshare.net/rjbs/perl-510-for-people-who-arent-totally-insane) 值得一读。

如何获取 Perl

Perl 在除 Windows 之外的几乎所有的操作系统里都已成为标准配置了。不过不想慢慢等待系统升级包的用户可以从 CPAN (the Comprehensive Perl Archive Network )自行下载 Perl 5.10 。地址是 http://search.cpan.org/dist/perl/ ,或者从 Perl 的主页 www.perl.org 下载。

Windows 用户可以编译从 CPAN 获取的源代码来取得 Perl,或者也可以下载两个易于安装的已编译版本中的一个。 Strawberry Perl (link: http://strawberryperl.com/) 是用户群为 Windows 制作的已编译版本,而 ActiveState (link: http://activestate.com/) 的版本由商业公司维护但是同样免费。ActiveState 版本已经可以获取,Stawberry Perl 也即将完成。【呐不喊】

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值