东亚银行、岚图汽车带你解锁 AIGC 时代的数字化人才培养各赛道新模式! 了解详情
写点什么

动态语言运行时公布

  • 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:00822
用户头像

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

关注

评论

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

Hover即将在DAO Maker上启动其公开发售

股市老人

TiDB in 2023, 一次简单的回顾丨PingCAP 唐刘

PingCAP

数据库 分布式 云原生 TiDB

JavaScript中exec()方法详解

百度搜索:蓝易云

JavaScript Linux 运维 云服务器 exec

mysql超出最大连接数解决方法

百度搜索:蓝易云

MySQL 云计算 Linux 运维 云服务器

Final Cut Pro for Mac(fcpx视频剪辑)v10.7.1 中文版

iMac小白

Emotion Wheel: A powerful tool to identify emotions

xiaoxi666

心理学

Nop平台的定位和发展规划

canonical

DDD 低代码 可逆计算 Nop平台

一篇文章彻底搞懂 TiDB 集群各种容量计算方式

PingCAP

数据库 TiDB

“分布式透明化”在杭州银行核心系统上线之思考

PingCAP

数据库 TiDB 银行业

架构误区系列19:Big API

agnostic

架构设计实战

推荐一套结合了chatgpt、gpt绘画、mj绘画的程序源码

aiisai

源码 GPT 绘画 ChatGPT MidJourney

Covalent Network与卡尔加里大学建立合作,推动区块链技术创新

股市老人

【组织】读《领导力》

极光一号。

听 GPT 讲 Deno 源代码 (13)

fliter

TIKV 分布式事务--Prewrite 接口详解

TiDB 社区干货传送门

TiDB 底层架构 TiKV 源码解读 TiKV 底层架构

Go 1.22 for 循环的两处重要更新

陈明勇

Go go1.22 go for

【ubuntu】DNS设置工具resolvectl安装教程

百度搜索:蓝易云

Linux ubuntu 运维 云服务器 resolvectl

starknet财神开始发红包了

币离海

以太坊 空投 starknet

Base 链上最火的 meme 叙事:All Your Base Are Belong To Us($AYB)

股市老人

一文了解Validator库

百度搜索:蓝易云

html Linux 运维 Node validator

在中国做 DePIN?你需要明白风险与机遇

TechubNews

架构的技巧

agnostic

架构设计原则 架构设计实战

报错:Cannot read properties of undefined (reading ‘$message‘)解决方法

百度搜索:蓝易云

JavaScript typescript 云计算 运维 云服务器

苹果Vision Pro与头显新应用

算AI

人工智能 创业 创新

阿里云配置选型

智慧源点

阿里云 ECS

ConcurrentHashMap是如何保证线程安全的

百度搜索:蓝易云

Java Linux 运维 ConcurrentHashMap 云服务器

听 GPT 讲 client-go 源代码 (1)

fliter

通过 Prometheus 编写 TiDB 巡检脚本(脚本已开源,内附链接)

PingCAP

数据库 TiDB

中国比特币矿工的新根据地:埃塞俄比亚

TechubNews

BTC

黄东旭:“向量数据库”还是“向量搜索插件 + SQL 数据库”?丨我对 2024 年数据库发展趋势的思考

PingCAP

数据库 分布式 TiDB

听 GPT 讲 Deno 源代码 (12)

fliter

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