【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

动态语言运行时公布

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

    阅读完需:约 3 分钟

微软刚刚宣布他们正在为公共语言运行时构建一个新的扩展,成为动态语言运行时(Dynamic Language Runtime,DLR)。设计该扩展的原因是为了保证动态语言之间的互操作性,能和原有 CLR 支持的静态类型语言间的互操作性一致。

目前,动态语言的互操作性存在的最大问题是缺乏统一的对象模型。即便运行在同一个底层平台(如 CLR 或 JVM)的情况下,每个动态语言都必须独立扩展自身的类型系统,以支持在运行时修改类。这些实现生来就互不兼容,使得在 IronPython 和 RubyCLR 之类的语言共享对象成为一件困难,甚至不可能的事情。

动态语言运行时提供了一个共享的动态类型系统,希望能在 CLR 平台上削除 Ruby 和 Python 之间存在的壁垒。理论上,用不同语言编写的不同程序中存在的对象是可以被自由共享的。

除了动态类型系统(Dynamic Type System)以外,DLR 计划提供其它功能,来使开发新的语言和将已有语言移植到 CLR 的变得更加容易。 Jim Hugunin 写道

DLR 所要做的是为你提供你喜欢的语言的最佳体验——对语言本身、其上优秀的工具、性能,以及和丰富的程序库集平台进行无缝整合都是一样的。DLR 带来的核心优势就是共享,它使得语言实现者共享标准特性,而无须从头开始从新构建它们。这使得他们能够专注于研究语言的新特性,使一门语言变得更加独一无二,而不是在重新发明另一个 GC 系统上劳神费力。

此外,Jim 还列出了四个在 DLR 初期就将支持的语言。一旦它们完成并且整个平台稳定下来之后,微软将配合希望支持 DLR 的其它语言开发人员开展工作。

之前微软已经声称 VB 将引入更多的动态特性,但之前从未有过任何暗示,说 VB 将达到 Python 或者 Ruby 的程度。这对 VB 意味着什么,目前尚无从知晓。

值得特别注意的是,DLR 是以开源的形式发布的。正如 Miguel de Icaza 所说的,对于 Mono 团队来说,这是一条利好消息。

DLR 是根据微软许可授权(Microsoft Permissive License,MsPL)的条款发布的,该许可无论从哪个角度说都是一项开源许可。这就意味着我们可以将 DLR 做为 Mono 的一部分使用和发布,而不需要从头开始构建它了。微软下了一着妙棋。

查看英文原文: Dynamic Language Runtime Announced

2007-05-03 05:00825
用户头像

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

关注

评论

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

@Component,@Service等注解是如何被解析的?

Java小咖秀

spring 面试 工作 注解 经验

超简单的网站暗黑模式,它真的超简单!

HelloGitHub

大前端

百度大脑开放日重庆站-智能物流专场报名啦

百度大脑

百度大脑 智能物流 智能物流开放日 重庆站

Python if __name__ == ‘main’ 的作用介绍

HoneyMoose

「SaaS第一股」微盟集团财报业绩大涨,超预期财报揭示多元投资布局

ToB行业头条

SaaS 微盟

全球币系统开发案例(源码)

系统开发咨询1357O98O718

fil挖矿系统开发|fil挖矿系统软件APP开发

系统开发

万物摩尔定律

soolaugust

AI

干货 | 万字详解整个数据仓库设计体系

五分钟学大数据

大数据 数据仓库 28天写作 3月日更

Python 生成 QR 二维码

HoneyMoose

设计有意义的选择——再谈心流

Justin

心理学 28天写作 游戏设计

共筑“新基建” 京东云全面开启渠道合作伙伴招募计划

京东科技开发者

云服务

看完了进程同步与互斥机制,我终于彻底理解了 PV 操作

飞天小牛肉

Java 程序员 面试 操作系统

《2020年IT行业项目管理调查报告》重磅发布

禅道项目管理

开源 项目管理 项目 调查报告 互联网行业薪资

高频量化交易系统开发功能丨量化交易机器人系统开发详情

系统开发咨询1357O98O718

小树系统开发案例(源码)丨小树机器人系统开发流程

系统开发咨询1357O98O718

uni-app跨端开发H5、小程序、IOS、Android(三):理解uni-app框架MVVM思想

黑马腾云

微信小程序 uni-app android iOS Developer 3月日更

Python 打印回车换行

HoneyMoose

Nirvana NA公链 NAC公链的两面观

区块链第一资讯

Continue 玩转像素点,Python 图像处理学习的第 3 天

梦想橡皮擦

28天写作 3月日更

2021 OS 大赛来了,为中国操作系统发展按下加速键

InfoQ写作社区官方

热门活动

uniapp实现音视频通讯

anyRTC开发者

uni-app 音视频 WebRTC 跨平台 sdk

【实战问题】-- 并发的时候分布式锁setnx细节

秦怀杂货店

Java 分布式 高并发

华为云应用服务网格最佳实践之从Spring Cloud 到 Istio

华为云开发者联盟

微服务 Spring Cloud istio 华为云 服务网格

MySQL的锁

一个大红包

3月日更

马特机器人系统开发(成品案例,快速上线)

系统开发咨询1357O98O718

华为云数据库GaussDB(for openGauss):初次见面,认识一下

华为云开发者联盟

数据库 分布式 华为云 GaussDB(for openGauss) 开源数据库

企业大数据实战:Kyuubi 与 Spark ThriftServer 的全面对比分析

网易数帆

大数据 spark Kyuubi Thrift HiveServer2

「 视频云大赛 — 大咖驾到 」下一代技术新浪潮,正由视频云驱动

阿里云视频云

阿里云 音视频 intel

IPFS云矿机系统开发|IPFS云矿机APP软件开发

系统开发

Python基础之:Python的数据结构

程序那些事

Python 程序那些事 python数据结构

动态语言运行时公布_.NET_Jonathan Allen_InfoQ精选文章