Perl 6
Perl 6是程式語言Perl语言的后续。由于Perl 6语言语法同Perl 5不同,因此,可以把她看作一种新的程式語言,尽管其计划提供Perl 5的兼容模式。
Perl 6拥有丰富的现代语言特征,作者计划用重新定义正規表達式和增加函數式程式語言的特征,使之成为可演化的语言。为保证Perl 6和Perl社区的持续稳定发展,Perl 6编译器需要使用Perl 6来重写。为保证Perl语言原有函式庫的重用,编译器还计划提供同Perl 5语言的兼容模式。
由于Perl 6语言的语法特征和要求,Perl 6编译器实现非常复杂,同时,开源社区的资源相对贫乏。因此,Perl 6编译器的开发显得相当缓慢。
2010年7月,Rakudo的Rakudo Star,作为主要版本的试验品发布。这一发布的目的是为了让人们有一个可基本用于实际的编译器,以方便编写程序,以及反映需求(Perl6的规范尚未冻结,以期根据人们的使用体验以及编译器的实现等来增补某些特性)。
目录 |
[编辑] 和Ruby比較
一般都是認為Ruby vs. Python(可能是因為同樣採取縮排的設計),但是就一些相關的討論和訪談,Ruby vs. Perl 6的可能性反而是最大的。CPAN上排名第一名,同時也是Perl 6的開發者的唐鳳(Audrey)就這麼說過:「Ruby就是『沒有到處打廣告的Perl 6』」[1]。Ruby的創始者——松本行弘(まつもとゆきひろ/Yukihiro Matsumoto,Matz)在接受O'Reilly的訪問時[2],也提到「Ruby借用了很多Perl的東西……,Python遠比Perl要少……」。從Ruby的命名也可以看出Matz遠大的企圖心:「Pearl(珍珠)是六月的誕生石[3],而Ruby是七月的誕生石,我認為Ruby這個名字作為Perl之後的一門語言的名字真是再恰當不過了。」[4]
Perl之父拉里·沃爾(Larry Wall)在《Larry Wall On Perl, Religion, and……》[5] 一文中表示:「很多方面上我還是很喜歡Ruby的,這是因為那些部分是從Perl借過去的。:-)」、「我還喜歡Ruby的C<*>一元星號操作符,所以我把它加到Perl 6里面。」
但是拉里·沃爾在文中也說:「Ruby的主要問題在於它的最少驚訝原則可能讓人誤入歧途,就好像隱藏式詞法範圍。問題在於減少誰的驚訝?專家和初學者對不同的事情驚訝。從一個小程序寫成大程序的人和從開始就寫大程序的人可能對不同的事情感到驚訝。」
[编辑] 参考文献
- ^ 日本的Perl社群名人——宮川達彥專訪。
- ^ 訪問Matz。
- ^ Pearl與Perl發音相同。
- ^ O'Reilly訪問Matz。
- ^ Larry Wall On Perl, Religion, and……
[编辑] 外部連結
[编辑] 規格
- Synopses - The evolving summary of each Apocalypse, updated regularly,這些文件被視為Perl 6正式的語言架構。
- Exegeses - Further explanation of each Apocalypse with code samples
- Apocalypses - The first-pass drafts from Larry Wall
- Official Perl 6 Documentation Perl 6的正式說明文件。
[编辑] 實做
- Perl 6,Perl 6的主要發展資訊站台。
- Rakudo Perl 6,基於Parrot的Perl 6實作(Activated)
- Pugs,以Haskell實做Perl 6的計畫。(Deactivated)
- v6.pm,純Perl的實做,based on a Perl 6's CPAN stack。
- Parrot,Parrot的主站。
- compilers, Full List of Perl 6 Compilers
[编辑] 其他
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||