50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

深入 DLR 语言——IronJS

  • 2012-07-25
  • 本文字数:489 字

    阅读完需:约 2 分钟

IronJS DLR 上的 ECMAScript 3.0 实现。其作者 Fredrik Holmström 最近在 i-programmer 的访谈上深入讨论在 DLR 上做语言实现的各种细节。

Fredrik 特别强调 DLR 为他省下了很大的工作量:

DLR 自带了很多好东西。

语言互操作是其中之一。DLR 本身代码的坚实可靠。输出 IL 等很大比例的设施它都帮你准备好了。

Fredrik 指出 DLR 有两种用法,一种是通过特殊的 binder 类 / 对象来关联操作,另一种是把 DLR 当作 IL 生成器和编译工具,然后自行做绑定。前一种速度较慢,IronJS 用的是后一种方案。根据去年的基准测试报告,速度已经超过IE8 的引擎。

自己做binding 的副作用,是牺牲了与其他DLR 语言互操作的天然能力。

IronJS 的解析器当前用 F#写成,而核心运行时是用C#写的。为了提升速度,Fredrik 计划在下一版本中将所有的 F#代码替换为 C#。他又在和Scott Hanselmann 进行的访谈中提到,IronJS 既然建立在CLR 之上,撞上性能墙只是迟早问题,无法跟原生代码的 V8 相比。

如果你想在 DLR 上实现自己的语言,阅读文档是个好的开始。“Iron”系列语言的源代码也是很好的阅读材料,如 IronPython 或者 IronRuby

查看英文原文: Inside A DLR Language – IronJS

2012-07-25 14:023514
用户头像

发布了 225 篇内容, 共 73.4 次阅读, 收获喜欢 52 次。

关注

评论

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

AB Micro850笔记 ccw 文档生成器

万里无云万里天

自动化 PLC 工厂运维

VMware ESXi 7.0U3q macOS Unlocker & OEM BIOS 2.7 Dell HPE 联想定制版 9 月更新发布

sysin

esxi dell hpe

Java开发分析工具:JProfiler 14 for Mac 激活版

你的猪会飞吗

JProfiler 14激活版 JProfiler 14 mac JProfiler 14破解版

鸿蒙 Next 实战: 环境搭建

北桥苏

鸿蒙 鸿蒙Next HarmonyOS NEXT

华为云技术专家分享4大举措,助力开发者开启鸿蒙原生应用开发

华为云开发者联盟

HarmonyOS 端云协同 ArkTS 开发者、

AB Micro850笔记 LD 计时器 ton tof

万里无云万里天

自动化 PLC 工厂运维

SpringBoot3实战:实现接口签名验证

江南一点雨

GitHub上 Star 数量最多的 Airtable 开源替代者

NocoBase

GitHub 开源 低代码 Airtable 无代码

Java 性能分析 5 大工具

FunTester

云栖实录 | MaxCompute 迈向下一代的智能云数仓

阿里云大数据AI技术

大数据 数据仓库 云数据 MaxCompute Data+AI

重磅发布!国内首部《智能化软件开发落地实践指南》免费下载

华为云开发者联盟

代码开发 大模型 人工智能’ CodeArts

还不知道这个原则的程序员,要小心了

禅道项目管理

程序员 软件测试 代码规范 测试人员 规范优先原则

AB Micro850笔记 ccw 未使用的变量浏览器

万里无云万里天

自动化 PLC 工厂运维

AB Micro850笔记 LD 用户自定义功能块

万里无云万里天

自动化 PLC 工厂运维

阿里巴巴API:赋能电商创新,革新1688商品详情获取方式

代码忍者

API 测试 pinduoduo API

VMware Aria Automation Orchestrator 8.18 发布,新增功能概览

sysin

vmware aria

金川集团:建设世界一流财务管理体系,向万亿营收冲刺

用友BIP

AB Micro850笔记 LD 计数器 ctd ctu

万里无云万里天

自动化 PLC 工厂运维

AB Micro850笔记 LD 结构化数据

万里无云万里天

自动化 PLC 工厂运维

VMware ESXi 8.0U3 集成 AQC 网卡定制版更新 OEM BIOS 2.7 支持 Windows Server 2025

sysin

esxi aqc

厌倦了黑底白字?用 Go 给终端点颜色瞧瞧!

江湖十年

终端 命令行 Go web #go

传统身份安全的局限性

芯盾时代

身份安全 统一身份认证 零信任模型

深入DLR语言——IronJS_语言 & 开发_Roopesh Shenoy_InfoQ精选文章