【发布时间】:2011-02-22 07:36:30
【问题描述】:
Python 被编译成中间字节码(pyc)然后执行。因此,有一个编译,然后是解释。但是,长期使用 Python 的用户说 Python 是一种“后期绑定”语言,不应将其称为解释型语言。
Python 与其他解释型语言有何不同?
您能告诉我在 Python 上下文中“后期绑定”是什么意思吗?
Java 是另一种语言,它首先将源代码编译成字节码,然后再解释成字节码。
Java 是解释/编译语言吗?
在编译/执行方面与 Python 有何不同?
据说Java 没有“后期绑定”。这是否与 Java 程序比 Python 快一点有关?
如果你也能给我链接到人们已经讨论过的地方,那就太好了;我很想阅读更多关于此的内容。谢谢。
【问题讨论】:
-
坦率地说,这种说法听起来像是在试图避开“解释”带来的耻辱感。如今,许多“解释”或“脚本”语言都在玩这些游戏。那么为何不?它比不这样做更快,并且不会给
interpreterruntime-compiler-launcher 增加太多复杂性。 -
呸!我所以想在那里三振出局...
-
(1) 似乎是定义问题。如果你能找到权威的定义,那么确定语言属于哪些类别应该不成问题。如果你不能,可能没有,你可以随意分类。 FWIW、x86 和我相信 x64 由 on-CPU 软件解释并在不同的基本 CPU 上执行。一些机器语言已经由硬件直接执行(比如我学习汇编程序的控制数据机器),但大多数还没有。
标签: java python late-binding compiled