分享
 
 
 

Parrot 常见问题

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

////////////////////

//一般性问题//

////////////////////

#什么是Parrot?

Parrot是为支持Perl6语言而新设计的解释器。它被设计成一种独立的虚拟机,可以用来执行从Perl5,Perl6等动态语(dynamic languages)编译成的字节码。理想中,Parrot能够支持其他的动态,被编译成字节码(bytecode-compiled)的语言,如Python, Ruby和Tcl。

#为什么叫Parrot?

Parrot来源于Simon Cozens的愚人节玩笑,说的是Larry Wall和Guido van Rossum宣布Perl和Python将合并。

#Parrot就是Perl6吗?

否!Parrot是用来执行Perl6程序的。Perl6语言的定义正在被Larry Wall加工。Perl6的真正状态仍然是一个迷,她会和今天我们看到的Perl充分的相似,以及需要一个运行时系统。

#今天我能够使用Parrot吗?

当然!Parrot正处于她执行的早期阶段。使用Parrot最主要的方式是去写Parrot的汇编代码。你可以在Apache中使用Ask Bjorn Hansen的mod_parrot模块来建立动态内容(dynamic content)。不过千万不要用于产品的代码中,那只是一个玩具。

#为什么我要用Parrot汇编代码编程?

很多的原因:

*所有的人都在这么做

*It's a neat hack.

*你能够享受是用汇编编程的乐趣而不必担心系统的崩溃

严肃的说,使用Parrot汇编语言是一种充满乐趣的挑战,同时也是用来测试Parrot的最好的方式。

#什么时候才能通过一种“真正”的编程语言来使用Parrot?

这要看你是怎么看“真正”这个词了。

*Leon Brocard发布了一个Java字节码到Parrot字节码的编器。

*Gregor Purdy正在进行一种能够直接面对Parrot字节码的小语言Jako的方面的工作。

*Dan Sugalski和Jeff Goff已经开始了将Scheme编译成Perl 字节码方面的工作。

#Parrot是用什么语言写的?

C.

#Why not write it in insert favorite language here?(不晓得如何翻译insert favorite language)

Becuase of one of :

*Not available everywhere.

*Limited talent pool for core programmers.

*Not fast enough

#你为什么不使用外部工具或者X库(library X)?

*许可证兼容性(License compatibility)

Parrot有着一个古怪的许可证--她目前正在使用和Perl5同样的许可证,这种许可证是GNU GPL和Artistic 许可证的分离,可以简写成Artistic | GPL。因此,Parrot的许可证和GNU GPL兼容,这意味着你可以把Parrot同GPL代码相结合。

能够进入核心解释器的代码必须归入与Parrot一致的条款。我们连接进入解释器的库代码(比如,用于Unicode的ICU库)能够被其他的许可证代替,只要他们自己的条款不禁止这样做。

*平台兼容性

Parrot必须工作在所有的Perl5的平台上,以及少数特别的平台。Perl5可以在80个平台上运行;Parrot必须在Unix, Windows, Mac OS(X and Classic), VMS, Crays, Windows CE, and Palm OS等等。而她的处理器的构架将会是x86, SPARC, Alpha, IA-64, ARM, 和68x00(Palms and old Macs).如果某些东西不能在其中的一个平台/操作系统中工作,我们就无法在Parrot中使用它。

*速度,大小和适应性

Parrot不仅应该能够,而且应该是高效的在这些平台上工作。根据不同编译器,Parrot的核心大小是在250K到700K之间。这样她就能够在掌上系统上运行了。任何Parrot使用的库必须足够快,几乎不存在性能的冲突;必须足够小,几乎不存在核心大小上的冲突;足够强的适应性,能够处理如Perl, Python, Tcl, Ruby, Scheme等的各种要求。

#为什么用你们自己的虚拟机,而不是编译成JVM/.NET?

那些虚拟机针对静态类型语言的(statically typed languages)。比如Java, C# 和许多其他的语言都是静态类型语言,而Perl不是。由于各种各样的原因,意味着Perl若要是在那些虚拟机上运行会慢的多,所以针对Perl这样的动态语言(dynamic language)我们设计了专门的解释器。

#那么,你们不能在JVM/.NET上运行了?

当然不是。他们不是我们的第一目标。我们首先建立自己的解释器/虚拟机,然后才会开展基于JVM,.NET的工作。

///////////////////////////////////

//PARROT AND PERL//

//////////////////////////////////

#为什么重新实现Perl?(Why re-implement Perl)

好问题!

在2000年夏天,Larry wall宣布是到了从新开始建立Perl的时候了,这包括Perl语言,语言的执行,那些志愿去实现和维护语言的源码社区的开发者,以及更大的使用Perl的程序员社区。

很多的原因促使我们开展的这个计划:

*Perl5是一个稳定的,可靠的,健壮的开发平台;她还很年轻,到Perl6正式发布的以后。(证据:Perl4依然坚强的活着,而其实我们都想让她消失)

*若有需要,我们有将Perl5转化成Perl6的能力。这保留了向后的兼容性。

*语言有修改的必要(The lauguage can stand some revision):格式并不属于核心语言, typeglobs have outlived their unsefulness。通过修改语言,我们能使Perl更好。

*一些瑕疵应该被除去:一旦成功,系统应该返回TRUE来代替FALSE,localtime应该返回year 而不是 year-1900。

*用Perl代替C来写Perl编译器是一件非常好的事情.

#你想用Perl来写Perl编译器?

当然!C, Java, Lisp, Scheme……实际上所有的其他的语言都是self-hoisting 的!

#Parrot如何一起处理Perl5和Perl6?

我们还不清楚,这将依赖于Perl6语言的定义。但是,我们或许会根据编译的是Perl5还是Perl6来选择使用两个不同的Perl编译器。Larry曾经说过或许会使用一个package statement来声明该文件是Perl5,但具体怎么做,我们也不清楚。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有