QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

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

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

关注

评论

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

VS Code 的 launch.json 进行高效代码调试:配置和原理解析

麦田的守望者

【华为云828企业节上福利】软件开发工具升级版免费套餐重磅上线

平平无奇爱好科技

一座玉带桥,盘古通天下

脑极体

AI

Kubernetes实现微服务容器化

雾岛听风(锋)

微服务 k8s 容器化

物联网时序数据库 IoTDB 荣获清华校友三创大赛总决赛最高奖

Apache IoTDB

MySQL索引,为什么索引会失效呢?

程序员万金游

MySQL Java'

博睿数据当选粤港澳大湾区金融创新研究院理事会单位,助力金融科技创新发展

博睿数据

博睿数据

“云渲染”,电影特效背后的技术

Finovy Cloud

云计算 渲染 云渲染

跑AI大模型的K8s与普通K8s有什么不同?

华为云开发者联盟

人工智能 云计算 华为云 华为云开发者联盟 企业号 8 月 PK 榜

聊聊Http服务化改造实践

树上有只程序猿

微服务架构 HTTP Feign

2024光储充展|太原国际光储充技术装备展会

秋硕展览

展会 光伏展 储能展

LeetCode题解:7. 整数反转,数组反转,JavaScript,详细注释

Lee Chen

JavaScript LeetCode

基于Vue前端框架构建BI应用程序

互联网工科生

Vue 低代码 BI 分析工具

IAM携手华为,创新科技解锁空净新标准

新消费日报

Spring高手之路13——BeanFactoryPostProcessor与BeanDefinitionRegistryPostProcessor解析

砖业洋__

spring springboot BeanFactoryPostProcessor BeanDefinitionRegistry

深入MaxCompute -第十二弹 -PIVOT/UNPIVOT

阿里云大数据AI技术

大数据

Elasticsearch ILM Shrink Action源码优化与探讨

腾讯云大数据

ES

一文学会List函数排序操作,20秒即可完成!

飞算JavaAI开发助手

易点天下受邀参与华为云印度尼西亚CXO-Camp 共探产业数字化转型新路径

新消费日报

“创新机制+明星项目”组合拳| Leap Launchpad引领Web3金融服务新风潮

股市老人

SAST工具编译命令捕获及参数处理实现

maijun

深度解读智能媒体服务的重组和进化

阿里云CloudImagine

云计算 视频云

华为云828营销季火热进行中,3大热门产品助力中小企业云上成长

平平无奇爱好科技

3DCAT携手华为,打造XR虚拟仿真实训实时云渲染解决方案

3DCAT实时渲染

虚拟仿真 实时渲染 CLOUDXR

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