CPython和IronPython的功能差异

时间:2013-02-12 09:09:24

标签: python .net clr ironpython

据我所知,IronPython编译为Bytecode,通过.net CLR编译为机器码,而CPython编译为Bytecode并用PVM解释。这是真的?什么是CLR?它也是一台虚拟机吗? 这是否意味着Iron Python更快? 我希望有人可以向我解释一下。

1 个答案:

答案 0 :(得分:3)

IronPython编译为Microsoft中间语言(MSIL),类似于CPython生成和解释的字节码。公共语言运行库(CLR)是执行MSIL的虚拟机。它有一个即时(JIT)编译器,可将MSIL转换为本机代码。

CPython没有JIT。 The IronPython wiki对性能有这样的说法:

  

性能与CPython相当 - 对某些事情要快得多   (它可以利用底层的JIT编译器   平台),但其他东西(特别是内置的)慢   容器类型,其中已经做了很多工作来优化   CPython类型)。