Compiler construction PyPy可以在Python可以运行的任何地方运行吗?

Compiler construction PyPy可以在Python可以运行的任何地方运行吗?,compiler-construction,cpu,jit,pypy,vm-implementation,Compiler Construction,Cpu,Jit,Pypy,Vm Implementation,我听说PyPy有自己的JIT编译器。我正在考虑使用PyPy的翻译脚本实现一种语言,将RPython转换为C。所以我想知道,PyPy在哪里运行?它能在Python的任何地方运行吗?或者它只能在特定的CPU上运行?阅读RPython源代码,似乎目前jit支持x86和ARM(均为32/64位) 如果没有jit,应该是每一个使用ANSIC编译器的平台,或者更好,是一个兼容GCC的平台。Pypy被翻译成普通的(但对人类来说不容易阅读)C。阅读RPython源代码,似乎目前jit支持x86和ARM(均为32

我听说PyPy有自己的JIT编译器。我正在考虑使用PyPy的翻译脚本实现一种语言,将RPython转换为C。所以我想知道,PyPy在哪里运行?它能在Python的任何地方运行吗?或者它只能在特定的CPU上运行?

阅读RPython源代码,似乎目前jit支持x86和ARM(均为32/64位)


如果没有jit,应该是每一个使用ANSIC编译器的平台,或者更好,是一个兼容GCC的平台。Pypy被翻译成普通的(但对人类来说不容易阅读)C。

阅读RPython源代码,似乎目前jit支持x86和ARM(均为32/64位)


如果没有jit,应该是每一个使用ANSIC编译器的平台,或者更好,是一个兼容GCC的平台。Pypy被翻译成普通的(但不容易为人类阅读)C.

是的,您可以在任何可以运行Python的地方运行Pypy:

PyPy是在RPython中实现的

R代表受限。RPython是Python的一个子集。因此,任何Python解释器实现都应该能够解释和运行RPython代码。因此,只要有一个可以运行Python代码的解释器,就可以运行PyPy

但那会很慢。您可以使用Python解释器(CPython、Jython、IronPython)运行另一个Python解释器(PyPy)来运行Python代码

这就是为什么当你翻译成C代码并编译它时


请观看,以有趣的方式介绍真正发生的事情。

是的,您可以在任何可以运行Python的地方运行PyPy:

PyPy是在RPython中实现的

R代表受限。RPython是Python的一个子集。因此,任何Python解释器实现都应该能够解释和运行RPython代码。因此,只要有一个可以运行Python代码的解释器,就可以运行PyPy

但那会很慢。您可以使用Python解释器(CPython、Jython、IronPython)运行另一个Python解释器(PyPy)来运行Python代码

这就是为什么当你翻译成C代码并编译它时


请注意对实际发生的事情进行有趣的介绍。

缺少什么细节?@Tobias我听说JIT在x86和ARM上工作,但我想知道在不进行JIT时,RPython转换器生成的代码。缺少什么细节?@Tobias我听说JIT在x86和ARM上工作,但是我想知道当您不进行JIT时,RPython转换器生成的代码。