我知道这个问题看起来很宽泛和主观,但我始终坚持对IronPython的这种定义-“IronPython是Python编程语言的一种实现”,如果有这样的帖子准确地回答了这个问题,请随时将其标记为重复。在
到目前为止,我对此的理解是:
1)Iron python只不过是托管库(铁蟒.dll)用C编写并使用CLR
2)Iron python托管代码在内部使用标准python库(作为Iron python的一部分安装)来使用DLR桥接gap。在
What is actual execution run time for any python code here ? Is it Python interpreter ? Does this interpreter runs in different process ?
(三)铁蟒.dll公开api,以便与python代码与任何其他.net语言集成。在
我确信我的理解有些地方是不正确的-“IronPython是Python编程语言的一种实现”,因为从这一点来看,Python语言似乎是一种契约,它指定了如何编写检查条件if condition
,而像iron Python这样的实现者负责将其转换为IL代码。是这样吗?在
感谢您的任何帮助或指示。在
不要把编程语言看作是真正的软件,而是要把它看作“规范”。这意味着我可以指定一种编程语言,但不一定要实现它。实现一种语言意味着编写一个程序,该程序接受该语言的代码,并完全按照规范的要求“运行”它。在
csc
编译器不是C语言本身,而是C编程语言的一个实现。C语言由C语言规范定义。语言规范定义了什么是语言。这种语言的实现应该完全按照语言规范的要求编译/解释代码。在某种意义上,语言规范是编程语言。在IronPython是一个实现,因为它是一个程序,它接受一个python代码的字符串作为输入,然后按照python specification的方式进行操作。这就是所谓的“实现”。在
铁蟒的作用是:
因此,Iron Python使用一些Python代码,对其进行一些处理,并输出行为完全符合语言规范要求的IL。这使得IronPython成为Python语言的“实现”。在
CPython被认为是python的另一个实现,因为它基本上做的是相同的事情:获取一些代码,将其转换为行为完全符合语言规范的可执行文件。在
相关问题 更多 >
编程相关推荐