Jak*_* M. 5 python perl interpreter parrot vm-implementation
如果我已经有一个解释器,我为什么要使用像Parrot这样的VM来使用我使用的动态语言(Python,Perl,...)?我可以获得什么,在我的代码和我的机器之间使用不同的VM,以及使用单独的解释器的成本?
(我是VM问题的新手,所以答案很明显)
编辑
如果我已经有一个解释器,我为什么要使用像Parrot这样的VM来使用我使用的动态语言(Python,Perl,...)?
首先,如果你正在开始一个项目,那么你可能还没有翻译.
但是,假设你有一个解释器并且正在考虑是否要为它添加功能或重写它以使用Parrot,那么我们想到的权衡是:
就个人而言,Parrot的优化器(以及基于寄存器的设计,主要是为了使优化变得更容易)和经过良好测试的跨平台代码库足以说服我.