可爱的 Python:Python实现内幕
2007-03-29 12:04:17 来源:WEB开发网与我们将要讨论的 Python 实现不同,Lisp 的派生在提供新实现的同时往往引入许多新颖的 语言特性。Python 实现在很大程度上实现和主要 CPython 版本 相同的 Python 语言。所有现有的版本都是开放源码合作努力的结果,这种情况下,创新与市场定位没有太大关系,甚至与有时导致开放源码项目分裂的许可证争斗也没有什么关系。而且,不同的 Python 版本也不是真正传统意义上的 支流,而集中于不同的概念,正是这些概念证明它本身就是 Python 实现。
两种没有详细说明的实现是 JPython 和 Python.NET。JPython 是以 Java 编写的编译器,用于将 Python 源代码编译成 Java 字节码。Python 应用程序最终是在 JVM(用户可能不知道它是以 Python 源代码而不是 Java 编写的,他们也不需要关心)中运行的。Python.NET 是个还未交付的实现,但它 -- 至少在结构上 -- 将与 JPython 相似。Python.NET 将让 Python 参与到微软的 .NET 项目中,该项目基本上接近于一个可以运行以各种语言(例如新的 C#、Visual、Basic、C++,以及 Python)编写的程序的非 Java VM。请随时关注这些实现的开发者发布的信息。
有两种从理论角度上讲使人着迷的实现,下面,就让我们听听它们的开发者都说了些什么:开发 Vyper的 John Max Skaller 和开发 Stackless Python的 Christian Tismer。
Vyper:采访创始人 John Max Skaller
Vyper 是以函数性语言 Ocaml (3.00) 编写的 Python 语言的实现。与其它 Python 实现比较,Vyper 提供了一些(可选的)语言扩展:更强大的范围确定规则和一些新的函数性特性。Vyper 现在不再进行开发,但它以后可能得到增强(请参阅 参考资料获得 Vyper,以及它的源代码。)。我问 Vyper 的创始人 John Max Skaller 有关建造 Vyper 的动机。
更多精彩
赞助商链接