写点什么

微软发布 IronRuby

  • 2007-05-03
  • 本文字数:976 字

    阅读完需:约 3 分钟

微软公司在其 MIX07 大会上宣布了 IronRuby,一个运行在.NET CLR 之上的 Ruby 实现的发布。其中,IronRuby 与 Java VM 上的 JRuby 类似,但与 Ruby/.NET Bridge 之类的工具不同,这类工具只是将 Ruby 解释器于.NET VM 相连接。

IronPython 是运行在.NET 之上的 Python 实现,其开发人员 Jim Hugunin向我们阐述了 IronRuby、IronPython 和另外一些动态语言之下的技术的更进一步信息

新的动态语言运行时(Dynamic Language Runtime,DLR)向 CLR 中加入了一小部分核心特性,使之得到显著改善。它向平台中加入了一系列明确为动态语言需求所设计的服务,包括同享的动态类型系统、标准托管模型(Standard Hosting Model),以及轻松生成快速动态代码的支持。有了这些新增的特性,要在.NET 上构架高质量的动态语言实现就变得信手拈来了。更重要的是,这些特性使得所有使用 DLR 的动态语言可以随意与其它动态语言,以及平台上现有强大的静态语言,比如 VB.NET 和 C#,共享代码。

他还指出 IronPython 的源代码集和新的 DLR 已经提供下载

Ruby 社区的观望者对微软官方的 Ruby 实现的期待已经有些时日了,迹象之一就是 John Lam, Ruby.CLR 的作者,目前是微软员工,他常常到如 ruby-core 的论坛上询问和 Ruby 及其部分标准库的行为相关的详细问题。

这和 JRuby 的 Charles O. Nutter 的努力不谋而合。他在背后不断推动合理的 Ruby 规范的制定,很早之前,他就创建了 Ruby Spec Wiki ,并试图鼓励社区参与到这个项目中去。另一项努力就是两个 Google SoC 资助的项目,用来使用 RSpec(一个针对“可执行规范”的 Ruby 框架)来定义可规范 Ruby 行为的测试套件。

很显然,这对于 JRuby、Rubinius 或者 IronRuby 这所有的 Ruby 实现来说,这是非常重要的,因为要了解那些行为和功能应当实现是至关紧要的。目前,多数 Ruby 库和特性的文档只包含在它们的实现代码中。

因此,Charles O. Nutter 鼓励微软参与到这项努力中来:

我们希望他们(微软)在今后参与到我们当中来,一同构建 Ruby 的社区级规范以及一系列通用的开源兼容性测试。

当被问及对微软进入 Ruby 领域的总体评价,Charles O. Nutter 称:

很高兴看见微软也看见了 Ruby 的潜力,并且他们着手开始了自己的 Ruby 实现。这也证明了我们在 JRuby 上所花的时间和精力没有白费,而且也强调了在 JVM 上的 Ruby 和其它动态语言的重要性。

查看原文: Microsoft announces IronRuby

2007-05-03 01:005589
用户头像

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

关注

评论

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

面试系列-4 hash应用场景分析实践

李阿柯

php 面试 Redis 核心技术与实战

明晚Django组队学习就要开始了

IT蜗壳-Tango

6月日更

动态规划电路布线问题(Java代码实现)

若尘

数据结构 6月日更

【译】是时候了解 CSS 逻辑属性了

KooFE

6月日更

Java Shutdown Hook 场景使用和源码分析

陈皮的JavaLib

Java 线程安全 Thread

沿着“云云协同”的桥梁,奔赴全面云化的产业之海

脑极体

JAVA对象直接输出的打印结果是什么?

加百利

Java 后端 字符串 6月日更

区块链行业的《高考志愿填报指南》

CECBC

栈和队列没想象中那么难

北游学Java

Java 数据结构 队列

深入SpringBoot的异常处理(一)

卢卡多多

异常 SpringBoot 2 全局异常 6月日更

2021年最新阿里巴巴Java面试权威指南(泰山版)震撼来袭

Java 程序员 架构 面试 计算机

Go http 包详解

Rayjun

Go 语言

【21-3】Zabbix 重置 Admin 密码

耳东@Erdong

zabbix 6月日更

22 图 |M1 和 Docker 谈了个恋爱

悟空聊架构

Mac M M1 Dock 6月日更 dokcer

读深入ES6记[五]

蛋先生DX

ES6 6月日更

三步教你编写一个Neumorphism风格的小时钟

空城机

JavaScript Vue 大前端 6月日更

Python——列表元素的排序

在即

6月日更

NQI国家质量基础设施“一站式”公共服务平台开发建设

源中瑞-龙先生

开发 NQI 质量基础设施“一站式”

JavaScript学习(一)——简介

空城机

JavaScript 大前端 6月日更

【LeetCode】完全平方数Java题解

Albert

算法 LeetCode 6月日更

记一次差点跑路的 RabbitMQ 运维经历

看山

运维 RabbitMQ 删库 6月日更

【Vue2.x 源码学习】第十一篇 - Vue的数据渲染流程

Brave

源码 vue2 6月日更

Java 并发编程——volatile 关键字解析

Antway

6月日更

并发王者课-黄金1:两败俱伤-互不相让的线程如何导致了死锁僵局

MetaThoughts

Java 多线程 并发

MySQL基础之九:子查询

打工人!

myslq 6月日更

MySQL 中的反斜杠 \\,真是太坑了!!

xcbeyond

MySQL 6月日更

Windows PowerShell ISE 是什么和 PowerShell 有什么区别

HoneyMoose

Windows 使用 PowerShell 来管理另外一台 Windows 机器

HoneyMoose

小型电商微服务架构拆分

Simon

架构实战营

如何拆分大型单体系统为微服务

Zhang

微服务

kubelet分析-pvc扩容源码分析

良凯尔

Kubernetes 源码分析 kubelet Ceph CSI

微软发布IronRuby_.NET_Werner Schuster_InfoQ精选文章