2010-04-13 71 views
5

我記得很快就採用了given .. when,say,//和Perl 5.10出現時的智能匹配運算符。Perl 5.12中最有趣/最有用的新東西是什麼?

你認爲Perl 5.12.0引入的最有用的修復和功能是什麼?

+4

這應該是社區wiki – Quentin 2010-04-13 15:09:03

+0

可能重複的http://stackoverflow.com/questions/1512047/is-there-anything-exciting-in-perl-5-11 – Ether 2010-04-13 16:04:37

+0

大衛·多納德:你說得對。 – hillu 2010-04-13 19:31:33

回答

5

這是我最喜歡的功能遠遠:

use 5.012; # enables 'use strict' implicitly! 
+0

感謝您的錯字修復,亞歷山大! – tsee 2010-04-14 07:10:01

3

我喜歡Yada Yada的想法,雖然時間會告訴它是否真的有用。

6
+0

順便說一句,以上選擇只是我的看法。 YMMV顯然:) – DVK 2010-04-13 17:19:38

6

while(readdir $dir){}現在的作品更像while(readline $file){}

perl -MO=Deparse -e'while(readline $f){}' 
while (defined($_ = <$f>)) { 
    (); 
} 

<$f>相同readline $f


這是版本v5.11.2如何Perl的前已經從事while(readdir $dir){}

perl-5.10 -MO=Deparse -e'while(readdir $d){}' 
while (readdir $d) { 
    (); 
} 

值得注意的是,如果存在文件或名稱爲0的目錄,上述操作將無法正常工作。無論如何,這並不重要,因爲它沒有做任何有用的事情。


在Perl 5.11.2版本有一個補丁補充說,把它更符合的while(readline $file){...}處理線。

perl-5.12.0 -MO=Deparse -e'while(readdir $d){}' 
while (defined($_ = readdir $d)) { 
    (); 
} 

我想指出,是誰提供的補丁之一。這是我曾嘗試在Perl核心中修復的第一件事。所以它也是我寫的第一個補丁,它已經成爲Perl。

+2

恭喜! – 2010-04-13 21:23:19

3

有一些微妙的,但不平凡的改進,這將使便攜式(閃存盤)Perl分發工作得更好(或全部)。

Perl現在也支持Windows上的64位GCC,所以草莓Perl 64位應該很快出來。