这是一个非常巨大的问题,我主要是在寻找可以了解以下内容的更多资源。

我知道Python解释器是用C编写的,并生成要在python虚拟机上运行的字节码(对吗?)。我的问题是,是否可以在Python本身中实施这两个?我想我要去哪里,是(技术)在Python上写下类似内容的可能性,尤其是在没有静态编译的情况下?

如果我正确理解的话,Python没有一个汇编器,必须在Python中编写。这些事情在技术上(可行吗?)可以做到吗?还是Python的动态键入会带来某种问题?

我对微处理器架构,组装和机器代码有些了解,这是EE毕业生在学校中所学的内容。但是我已经迷失方向,看了整个图片,例如Python等更高级别的语言。

有帮助吗?

解决方案

您首先需要用任何语言编写Python编译器(不是解释器),最好是Python。编译器的第一运行将需要通过解释器运行。

然后,您将与其自身编译编译器,从而导致不需要解释器的本机编译器。

然后,您可以使用编译器将任何Python编译为本机代码。

此过程称为引导,许多语言的主要编译器(即使不是大多数)使用。

您可以在此处阅读有关此过程的更多信息: http://en.wikipedia.org/wiki/bootstrapping_(compilers)

至于创建操作系统,如果要避免编译的代码,您将需要最低限度地实现Python解释器。如果您将Python解释器作为微粒写,则可以在Python中编写操作系统的其余部分。 (编辑:我只是无意间描述了贾罗(Jiaaro)提到的克莱斯(Cleese):))

其他提示

编译器,而不是解释器。但是你在寻找 pypy.

詹姆斯·陶伯(James Tauber 克莱斯, ,并且最近开始努力使其继续进行 pypy (用Python写的Python口译员)

关于OS实施问题,您需要系统编程语言来实现OS。除非您能够梦想着一个python汇编器并将python转换为直接可执行的二进制文件,否则不可能在Pure Python中做到这一点。

如果您想在组装中进行编码并让Python为您组装,请看一下过时和实验性的 吡咯.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top