AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

微软将 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:521871
用户头像

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

关注

评论

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

测试用例编写和管理

刘冉

软件测试 测试用例

【架构实战营】模块三作业

liu🍊

在线英文名随机生成器

入门小站

工具

和12岁小同志搞创客开发:手撕代码,做一款声控灯

不脱发的程序猿

少儿编程 DIY 传感器 创客开发 Arduino

探索式测试落地实践

刘冉

探索测试

学习心得 - 架构训练营 - 第八课

Fm

EDAS 4.0 助力企业一站式实现微服务架构转型与 K8s 容器化升级

阿里巴巴云原生

阿里云 云原生 PaaS EDAS

架构实战营 - 模块八作业

en

#架构实战营

无处不在的 Kubernetes,难用的问题解决了吗?

阿里巴巴云原生

阿里云 Kubernetes 容器 云原生 难题攻克

微服务中台技术之延迟中心实践

小江

Java redis kafka 延时队列

2021年了,数据分析还吃香么?

Geek_utwige

Python 最佳实践 数据分析 爬虫 职业发展

数据产品经理实战-数据分析能力养成

第519区

数据分析 数据产品

Java8中Stream初试

Geek_4bdbe1

学生管理系统详细架构设计文档

21°Char

linux之ClamAV杀毒软件安装配置

入门小站

Linux

对于排序号中参数值的校验

卢卡多多

参数校验 11月日更

Scrum模式之估算点模式读后感

Bruce Talk

敏捷 随笔 Agile User Story Scrum Patterns

纯CSS实现轮播图

Augus

CSS 11月日更

聚焦云原生,阿里云与 CNCF 共话「云未来,新可能」

阿里巴巴云原生

阿里云 云原生 活动 KubeCON

模块四作业

bob

「架构实战营」

【高并发】从源码角度分析创建线程池究竟有哪些方式

冰河

Java 并发编程 多线程 高并发 异步编程

MyBatis 中为什么不建议使用 where 1=1?

王磊

mybatis

大数据训练营一期毕业作业

朱磊

14 K8S之对外访问容器服务

穿过生命散发芬芳

k8s 11月日更

学习心得 - 架构训练营 - 第七课

Fm

《PyTorch深度学习实战》复习之环境搭建

IT蜗壳-Tango

11月日更

Python 官方研讨会:彻底移除 GIL 真的可行么?

Python猫

Python

契约测试理论篇

刘冉

软件测试 契约测试

模块三作业

忘记喝水的猫

架构训练营

模块三作业

lxz

模块三作业

周文

「架构实战营」

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