写点什么

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

  • 2010-10-24
  • 本文字数:2195 字

    阅读完需:约 7 分钟

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 和 IronRuby v1.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%。

查看英文原文: Microsoft is Turning Control of Iron Languages to Miguel de Icaza and Jimmy Schementi

2010-10-24 07:521877
用户头像

发布了 157 篇内容, 共 57.6 次阅读, 收获喜欢 6 次。

关注

评论

发布
暂无评论
发现更多内容

“无法打开应用,因为Apple无法检查其是否包含恶意软件“解决方法

Rose

定期做好这件事,减少技术债,拒做背锅侠

极狐GitLab

第三方 Cookie 被禁用?企业该如何实现用户精准运营和管理

Authing

Cookie Authing 用户运营

Acrobat Pro DC 2023如何插入附件?Acrobat Pro DC添加附件方法

Rose

用二维码介绍产品详情,扫码查看图文并茂的宣传册

草料二维码

JavaScript面向对象之实践项目

伤感汤姆布利柏

苹果电脑Mac教程:如何开启任何来源选项

Rose

KaiwuDB × 风电企业 | 高性能、低成本、释放数据价值

KaiwuDB

数据库 解决方案

随想2024.01.15

hackstoic

生活感悟

软件开发

Geek_8da502

使用Local Persistent Volume 部署有状态工作负载

华为云开发者联盟

Kubernetes 开发 华为云 华为云开发者联盟

测试工程师必知的10大测试法则

禅道项目管理

测试 自动化测试

京东ES支持ZSTD压缩算法上线了:高性能,低成本 | 京东云技术团队

京东科技开发者

从前端角度浅谈性能 | 京东物流技术团队

京东科技开发者

良心推荐!几款收藏的神级IDEA插件分享

Java随想录

Java IDEA

Prometheus配置Basic Auth进行安全防护,实现登录控制

华为云开发者联盟

开发 华为云 华为云开发者联盟

我想做一款软件产品,应该怎么做?

天津汇柏科技有限公司

创新创业 产品原型设计软件

Parallels Desktop 17 安装Windows 11 教程 附激活工具

Rose

ElasticSearch降本增效常见的方法 | 京东云技术团队

京东科技开发者

ByConity 社区回顾|ByConity 和开发者们一起展望未来,携手共进!

字节跳动数据平台

开源数据库 ByConity

AI遇上传统文化,文心一言上央视带来跨时空访古体验

飞桨PaddlePaddle

人工智能 深度学习

面试官:如何保证本地缓存的一致性?

王磊

Java 面试

解决苹果无线鼠标、键盘或触控板无法被 Mac 识别的方法

Rose

软件测试/测试开发/全日制/测试管理丨Appium Inspector

测试人

软件测试

奇遇未来新动态!AIGC产品经理教学终于来了!

极客天地

让 K8s 更简单!8款你不得不知的 AI 工具-Part 1

SEAL安全

开源 AI Kubernetes

APP加固原理与作用

微软将Iron语言交由Miguel de Icaza和Jimmy Schementi管理_.NET_Jonathan Allen_InfoQ精选文章