抖音技术能力大揭密!钜惠大礼、深度体验,尽在火山引擎增长沙龙,就等你来! 立即报名>> 了解详情
写点什么

John Lam 访谈:IronRuby 的现状

2008 年 6 月 03 日

去年四月,Scott Guthrie 在 MIX07 上首次介绍了 IronRuby。从那时开始,IronRuby 就一直在开发中,并计划于今年下半年正式推出第一版。

IronRuby 是一个运行在.NET 框架的完整 Ruby 1.8.x 实现,它允许 Ruby 应用能够被无缝的集成到.NET 库和基础设施中。它使用了微软的 Dynamic Language Runtime ,并依据 Microsoft Permissive License 发布所有源代码。这种集成使得应用 Silverlight 和.NET 框架的全部能力创建应用变得非常容易。

InfoQ 有幸对 John Lam 进行了访谈。John Lam 是 RubyCLR 的最初创始人,随后加入 Microsoft 负责 IronRuby 的研发。John Lam 的正式头衔是动态语言运行时组经理。

Rob Bazinet (RB):开发团队还需要多长时间来正式推出第一个产品版本?

John Lam (JL):我们计划在今年下半年推出。目前,还有许多工作亟待完成。而且现在还很难判断整个社区的支持会到什么程度(我们现在已经得到了许多来自社区的优秀贡献)。所以根据社区的支持情况,我们的的时间计划会有一定的调整范围。

RB:近日,Scott Guthrie 宣布 Silverlight 2.0 会在其 2008 年第一季度的版本中支持 IronRuby,现在计划中的 IronRuby 实现中,有多少部分是获得这一 Silverlight 版本支持的?

JL:我们会密切关注这一新版本的 Silverlight。也就是说,Silverlight 是一个移动的标靶。我们团队中有一个开发者(John Messerly)专门负责保持我们与 Silverlight 的同步。我们的 DLR 接口现在也在进行着大规模的改动,我们将会考虑这些改动与 Silverlight 新版本之间的协调。

RB:我看了一下 IronRuby 的开发者列表,这个列表中的成员们对于 IronRuby 的实际开发有多大的投入度呢?

JL:我们在很积极的寻求人们对于库的贡献,而且我们已经得到了 Curt Hagenlocher、Peter Bacon、Darwin、Terence Lewis 和 Seo Sanghyeon 等人的鼎力支持。库是我们实现中最适合并行开发的部分。而在编译器部分,我们确信我们已经得到了构建一个高品质语言实现所需要的帮助。

RB:我看到 Charles Nutter 在列表中很活跃,他的经验是如何贡献到 IronRuby 的研发中的?

JL:关于 Charlie,最值得称道的一点是他始终在努力改进所有 Ruby 实现的性能。他关于 JRuby 在精简压缩方面的经验(例如浮点类型型和大整数类型的特殊实现,以及如何处理 ObjectSpace)对于我们处理类似问题启发很大。

这里为那些没怎么听说过 Charles Nutter 的读者介绍一下。他是 Sun 公司 JRuby 项目的负责人。Sun 在 2006 年得到了 JRuby 项目,因此 Charles Nutter 和其他一些开发者也成为了 Sun 的员工。即便如此,Charles 还是基于他在 JRuby 项目中的经验,为 IronRuby 的方向提供了大量建议和反馈。

RB:你觉得 IronRuby 项目的“开源”部分,也就是从贡献者们那里得到的东西是否达到了你的预期? 在刚才回答第三个问题时,你说得到了很多优秀贡献者的支持,不过我还是想知道这些支持是否达到了你的预期。

JL:我对于社区贡献的质量感到非常满意。许多人们花了大量时间来理解我们的语言实现和 CLR 的工作原理。

RB:站在开源这边,对于这个项目,还需要完成哪些工作呢?目标是完整的 1.8.6 实现,对吗?

JL:是的,我们也希望有些 1.9 的特性是我们可以同时实现的。比如我们的 MutableString 实现。这个实现不需要太多的额外工作就可以实现 1.9 的语义,并且添加一个切换选项来做到 1.8.x 兼容。

RB:IronRuby 会有一系列在 Visual Studio 2008 中开发 UI 的工具吗? 会有一个官方发布的 IronRuby 版本被整合在 VS 2008 中吗?

JL:我们目前没有在 VS 中加入 IronRuby 图形工具的计划。值得一提的,目前 Huw 和 Dermot 在 Sapphire in Steel 那边为向 VS 中提供设计支持做了一些卓越的工作: http://www.sapphiresteel.com/IronRuby-Visual-Designer .

RB:IronRuby 团队是否在积极地与 Huw 和他开发者一起努力克服 IronRuby 相关 UI 工具间的差别,还是说这只是他们那一方的工作,和你们并没有正式的协作?

JL:目前,UI 工具间的差异很大。也就是说,我们目前没有正式的协作。我们会经常解答他们提出的各种问题,而他们也会定期向我们展示他们的工作。

RB:我想每个人都想知道 Ruby on Rails 支持是否是 IronRuby 的一个目标。你能告诉我们团队是否在为此努力?

JL:是的,Rails 是我们能够宣称 IronRuby 正式发布的重要条件。

RB:你对于 IronRuby 未来的愿景是什么?

JL:我们的目标没有改变。我们将发布一个高质量的 Ruby 语言实现,大概在 2008 年的下半年。从现在开始到那个时候,我们的开发都遵循“会议驱动”的开发计划。现在我们在计划参加 MIX 08、RailsConf、Tech Ed 和 OSCON。

RB:从开始动手到现在,你个人如何评价已有的进展程度?你的期望是否还像刚加入项目时那样?

JL:我对于现在社区和微软团队所取得的成果感到非常高兴。我们拥有一支精锐的开发者和测试者队伍。我对于当初的选择没有任何可后悔的。

RB:John,谢谢你从百忙中抽出时间来参加我们的访谈。

关于 IronRuby 的更多信息,可参见 RubyForge 上的 IronRuby 项目并关注 John Lam 的博客

查看英文原文 The State of IronRuby with John Lam

2008 年 6 月 03 日 20:28634
用户头像

发布了 24 篇内容, 共 21667 次阅读, 收获喜欢 0 次。

关注

评论

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

亲密爱人

Janenesome

爱情

Java开发架构篇:初识领域驱动设计DDD落地

小傅哥

设计模式 领域驱动设计 DDD 小傅哥 架构设计

部门最漂亮的妹子离职了

无箭的丘比特

团队管理 生涯规划 企业文化 职场

520 我用算法帮女朋友的闺蜜选男友

cherubines

Python 算法 数据分析 蒙特卡洛 最优解

Android | Tangram动态页面之路(四)vlayout原理

哈利迪

android

如何设计一款“高可用高性能”的发号器?

捉虫大师

Java 高可用 发号器 高性能 raft

「Postman教程 」功能介绍-1

Megatron7

测试 Postman

生活就是这么讽刺,有时候你嘲笑他,有时候你想成为他......

代码诗人

中年危机 文艺 短片小说

奇怪知识点系列:Office 365 CDN 揭秘

手艺人杨柳

Office 365 Microsoft 365 SharePoint Online

比特币是新生事物吗?

Haiyung

比特币

「Postman教程 」接口测试-2

Megatron7

测试 Postman

SQL 找出 100 以内的质数

zero

sql MySQ

看完这篇 HTTPS,和面试官扯皮就没问题了

cxuan

https

你的c++团队还在禁用异常处理吗?

helloworld

c c++ C#

谁能让你安稳

Neco.W

工作 稳定性 努力工作

2020年5月19日 Java并发编程专题

瑞克与莫迪

Java

编辑距离的计算

zikcheng

算法 编辑距离

为什么window.open只是打开了一个空白页

阡陌r

Java 踩坑 网络协议

视频 | 5款免费翻译软件实测对比,从花花董花花的被删微博到北京话“你丫给我站住了”都能翻译

赵新龙

翻译

Kubernetes时代的云容器平台:各家云产品模式逐渐丰富

韩超

腾讯云 阿里云 Kubernetes IaaS PaaS

实现一个比LongAdder更高性能的计数器有多难?

捉虫大师

Java jdk LongAdder

回“疫”录(21):你这样做的样子真丑

小天同学

疫情 心理 回忆录 现实纪录 纪实

SQL 生成斐波那契数列

zero

sql 斐波那契 MySQ

程序员的晚餐 | 5 月 19 日 蒜香鸡腿,味道令人惊讶

清远

美食

比特币为什么值两万亿?

Haiyung

比特币

工信部报告显示:电话越打越少 、短信越发越多……这是怎么回事?

赵新龙

短信 工信部

《零基础学 Java》 FAQ 之 9-Java里的各种数据类型占用多少内存空间

臧萌

Java

关于键盘的一些事

BabyKing

vim 缓存 键盘 快捷键 karabiner

从Deepl说起,聊一聊未来的“安全职业”

孤岛旭日

程序员 AI 职业

Oracle 数据恢复一例

wong

oracle windows dbf

任何事物当中的百分之九十都是垃圾?

池建强

互联网 信息噪声

Study Go: From Zero to Hero

Study Go: From Zero to Hero

John Lam访谈:IronRuby的现状-InfoQ