Andrei Alexandrescu在D语言论坛上发帖表示,他在Facebook的代码库中提交了第一个5112行的D语言项目,用于替换之前的C++版本。与之前的版本相比,新程序代码量更小,而编译、运行速度都获得了大幅提高。
值得一提的是,这个论坛本身就是用D开发的。响应速度很快。
Andrei Alexandrescu曾是著名的罗马尼亚C++程序员,著有《C++编程规范》、《C++设计新思维》。2007年曾到北京参加CSDN的首届软件开发大会。近年来他活跃在D语言社区,成为D语言的另一位主要设计者,是《D程序设计语言》的作者。
在新兴的系统级编程语言中,D与Go有相近的应用场景,关于两种语言孰优孰略Andrei Alexandrescu与Ian Lance Taylor(Google工程师,GCC的Go前端作者)曾展开过一场热烈讨论。简要概括,Alexandrescu的观点是,D是更好的C++,C++擅长的它也擅长,C++不擅长的它也擅长;而Go是更好的C,但C的手工内存管理它却没有,与C的交互也比较弱。而Go的支持者则反击说,需要手工内存管理的地方,我都用汇编了。
另外,其实Go本身也支持不安全内存管理,但有评论说不优雅,比C和C++还麻烦。
D语言项目现在也托管在GitHub了:https://github.com/d-programming-language。
Hacker News上的评论很快演变为一场对系统编程语言选择的大讨论。Alexandrescu和D语言之父Walter Bright都参与其中。
现在看Go、D、Rust和Scala都有一些拥趸。此外,对什么是系统编程语言也有分歧,有人认为就等同于操作系统,有人认为应该是非应用层面(这说法其实挺含糊的)与硬件结合紧密的系统,包括操作系统、数据库、嵌入式系统和网络软件如防火墙等等。
你选择的系统编程语言是什么?欢迎说说这一选择带来的酸甜苦辣。