Home > News content

微软将Iron语言交由Miguel de Icaza和Jimmy Schementi管理

via:博客园     time:2010/10/25 9:01:06     readed:585

Jason Zander近日宣布,微软将把IronPython和IronRuby交由Novel/Mono之父Miguel de Icaza及IronRuby的前领导者Jimmy Schementi来管理。Jimmy已经于七月份离开微软加入Lab49。IronPython也补充了两位协调人:IronPython in Action一书的合作者Michael Foord,以及IronPython MVP,Jeff Hardy。这也会对项目的操作方式产生重大影响。

  • 社区目前可以向IronPython和IronRuby的任意组件贡献代码了。
  • 我们对CodePlex上的IronPython和IronRuby项目进行了修改,现在社区成员可以提交贡献,而不需要经过微软的介入,或是某个微软员工的引荐。
  • 我们已经基于Apache 2.0发布了Visual Studio的IronPython工具,目前已经收到了许多针对Visual Studio中IronPython语言服务的有效反馈。如今我们也已经发布了Visual Studio的IronRuby工具原型,也期待可以得到类似的反馈。Apache 2.0协议让社区成员可以使用在使用这些工具的同时贡献出自己的力量。
  • 我们完成了许多有关IronPython v2.7和IronRubyv1.9的基础工作。
  • 我们对基础架构进行了许多修补,社区可以使用我们的测试来验证所有语言的更新。
  • 我们启动了一个完整的发布流程,可以从CodePlex项目中直接进行构建并发布。之前我们只能在内部的代码库中做到这点。

Jeff Hardy补充到,

虽然Zander对此并没有明确宣布,但微软已经不再赞助IronPython及IronRuby。未来微软员工只能在业余时间以非官方的形式参与项目。

总体而言,我想这不会是IronPython的终点。我们有着很好的社区,可以和微软之前做的一样好。如果您想让它繁荣,那么现在已经可以向IronPython提交补丁了。一个良好的开源社区需要稳定的贡献者作为核心,也同要需要大量偶尔来挠痒痒的人。

Iron语言起初是用来验证公共语言运行时(Common Lanugage Runtime,CLR)是否对动态语言有良好的支持。这个项目发展至今,已经让不同的动态语言可以在一个统一的对象模型基础上进行交互了。这方面的努力成果,也就是动态语言运行时(Dynamic Language Runtime,DLR),已经包含在.NET 4.0中。

据Jeff Hardy称,DLR分为里外两“环”:

内环包括表达式树的扩展,Call Site,以及其他一些基础性组件,这也是之前随.NET 4一并发布的Microsoft.Scripting.Core.dll。外环则包括了托管API:ScriptEngine、Scope等等。这部分工作已经交给社区管理了,我们可以根据意愿对它进行修改。

据我所知,内环,也就是.NET 4的部分十分稳固,可能会有些改变,不过只会是非常细微的,我们希望微软在修改时会乐意和我们一起工作(以及IronJS,Clojure-DLR以及IronScheme等项目)。

在我看来外圈也十分稳定,不过我们不必在修改时缩手缩脚(除非这会对多个项目产生影响,因此还是需要一些必要的警告)。为了避免产生混淆,我们正打算将其称为DLR+或其他某个名字。

Jython之父,也是IronPython的主要贡献者Jim Hugunin即将离开微软加入谷歌。谷歌使用Python在业界有一定名声,因此他在那儿一定会很受欢迎。

Jim写到,

虽然微软停止赞助IronPython的决定不是我离开的主因,但的确对我也有所影响。可能你们大都知道,我已经有段时间没有将主要精力放在IronPython上了,不过这一决定还是让我对工作进行了反思,我认为是时候探索新的职业道路了。可能带着愤怒离开微软会更让人神清气爽——最好还能带着一些违法的证据一并逃离。不过,我对这里大量优秀的人员及产品表示尊敬。我已经爱上C#语言的优雅,可能需要承受一些编写Java代码时的痛苦,从微软Office精心雕琢的UI切换到Google Docs时可能也会遭受些挫折。不管怎么说,我会珍惜从优秀的人们那里所学到的东西。

相关消息:IronPython 2.7已经进入了beta阶段,Dino Viehland在发布记录中写到,

IronPython 2.7包含一些Python 3.0中的特性。这次发布主要包含了新的内置_io模块,包括字典和集合推断,集合文本表示法,支持在with语句中使用多上下文管理器,以及itertools方法中的几个新功能,还有新版字符串格式化的自动索引。这次发布也包含大量对标准库的更新,例如有序字典和新的argparse模块。

这次发布的IronPython安装包还包含了“Visual Studio的IronPython工具”选项,这表示在安装了Visual Studio 2010前提下,用户只需一个安装包便能同时获得IronPython及其Visual Studio支持。这个版本的IronPython工具主要包括一些bug修复,例如WPF设计器改进:目前设计器已经对XAML和WPF有了完全的支持,包括Python类的动态数据绑定。

我们还基于CPython文档更新了IronPython安装包。这个新的chm文件包括Python语言及标准库的文档。我们对普通的Python文档进行了扩展,覆盖了IronPython相关的话题,例如DLR托管API的使用方式,以及使用静态类型的.NET语言扩展IronPython等等。

我们也补充了一些原本没有的CPython标准库,也包含了mmp及信号模块,这更好地支持了系统与非托管代码之间的交互。

自然还有一些bug修复及性能改进。这次的性能改进主要针对了cPickle,内置的sum函数,并支持了快速异常(不使用.NET的异常机制)。同时,我们大大减少了IronPython抽象语法数的内存占用量,这带来了许多提高,其中最明显的一点在于如今的启动速度比IronPython 2.6.1提高了10%。

China IT News APP

Download China IT News APP

Please rate this news

The average score will be displayed after you score.

Post comment

Do not see clearly? Click for a new code.

User comments