HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

D.NET 编译器源码发布了

  • 2009-05-18
  • 本文字数:523 字

    阅读完需:约 2 分钟

D 语言是一门相对来说比较新的语言,就像 ObjectiveC 一样,它试图解决 C++ 中的一些严重问题。下面的内容来自于对 Cristian Vlasceanu 的采访

D 语言在很多方面都鼓励采取“正确”的行为。比方说在 C 和 C++ 中,如果你写“"int i;”,那么 i 这个变量就是没有初始化的,这时程序员就需要敲入额外的代码“int i = 0;”来实现“正确”的行为,但 D 语言却与之不同:“int i;”会安全地将变量 i 设为其默认值(也就是 0)。要想不对 i 进行初始化,你需要额外的输入“int i = void;”来表示你是有意不对 i 进行初始化而不是因为疏忽大意。

D.NET 是 D 语言到 CLR 的移植,目前还处在试验阶段。其包含两部分,一个前端组件及一个后端组件。前端组件用来解析源码并生成抽象语法树。后端编译器接收生成的抽象语法树并生成实际的机器码或 IL 代码。虽然前端及后端组件的代码都在CodePlex 上,但其只维护后端组件。前端组件已经超出了 D 2.0 语言编译器的范围之外了。

需要注意的是:

后端组件代码的质量还不足以用在产品中,目前只是用作研究及学习目的。D 语言是一门相当复杂的语言,一些非凡的特性比如 TLS 和闭包是如何生成 IL 代码的呢?这些都很值得我们去研究。

查看英文原文: Source for the D.NET Compiler is Now Available

2009-05-18 00:361348
用户头像

发布了 88 篇内容, 共 262.4 次阅读, 收获喜欢 8 次。

关注

评论

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

极速体验SpringCloud Gateway

程序员欣宸

Java SpringCloud SpringCloud Gateway 9月月更

部署华为云DWS过程

乌龟哥哥

9月月更

《MySQL入门很轻松》第5章:数据完整性及其分类

乌龟哥哥

9月月更

大数据ELK(九):使用VSCode测试分词器

Lansonli

ELK 10月月更

面试官:说说Event Loop事件循环、微任务、宏任务

loveX001

JavaScript

问:React的setState为什么是异步的?

beifeng1996

React

【牛客刷题-算法】 NC19 连续子数组的最大和

清风莫追

数据结构与算法 10月月更

开发者有话说|我想给你讲一个故事

石云升

个人成长 9月月更

测试

乌龟哥哥

9月月更

浅谈云原生安全

HummerCloud

云原生 云安全 云原生安全

启动 Hello Spring Security Boot 应用

HoneyMoose

计算机网络——MAC地址、IP地址

StackOverflow

编程 计算机网络 10月月更

2022-09-30:以下go语言代码输出什么?A: true true false true false; B: true false false true false; C: true true

福大大架构师每日一题

Python之鸡兔同笼

梦笔生花

9月月更 Python语法 鸡兔同笼

第1章:初识数据库与MySQL----数据库基本概念

乌龟哥哥

9月月更

promise执行顺序面试题令我头秃,你能作对几道

loveX001

JavaScript

【牛客刷题-算法】 NC13 二叉树的最大深度

清风莫追

二叉树 数据结构与算法 10月月更

Python之简易计算器的制作

梦笔生花

Python 9月月更 简易计算器

《MySQL入门很轻松》第4章:数据表中存放的数据类型

乌龟哥哥

9月月更

linxu入门指令

乌龟哥哥

9月月更

GaussDB(DWS)如何实现实时,批量和交付式查询一站式开发

乌龟哥哥

9月月更

多线程——死锁的原因和解决方案

StackOverflow

编程 多线程 10月月更

多线程(进阶)

StackOverflow

编程 多线程安全 10月月更

从单机百万tpmc到分布式千万tpmc,GaussDB性能提升的3个关键技术剖析

乌龟哥哥

9月月更

React面试:谈谈虚拟DOM,Diff算法与Key机制

beifeng1996

React

14个你必须要知道的ubuntu快捷键

乌龟哥哥

9月月更

《MySQL入门很轻松》第2章:MySQL管理工具介绍

乌龟哥哥

9月月更

阿里云搭建halo博客

乌龟哥哥

9月月更

腾讯云搭建wordpress网站超详细介绍

乌龟哥哥

9月月更

【牛客刷题-算法】1-算法入门-数据结构-栈

清风莫追

算法与数据结构 10月月更

Python之斐波那契数列的实现

梦笔生花

Python 9月月更 斐波那契数列

D.NET编译器源码发布了_.NET_Jonathan Allen_InfoQ精选文章