D支持64位有多好?

def*_*ode 20 64-bit d

我想尝试D编程语言.我有一个简单的宠物项目,我一直想完成,我认为这是一个很好的学习机会D 2.0.

但是,我的主要操作系统是使用Windows 7 64位的kubuntu 64位双启动,我似乎无法让它工作.该项目将使用SDL,我怀疑我的64位操作系统可能是问题.

D64位的当前状态是什么?有没有人有这方面的工作经验?

顺便说一下,我没有兴趣D 1.0,所以它D 2.0或者是破产.

dsi*_*cha 21

目前,答案是响亮的"它取决于".具体来说,它取决于操作系统和哪个版本的D.

DMD或Digital Mars D编译器是参考实现,并提供64位支持.64位支持是新的(见下面的评论),但语言创建者沃尔特·布莱特已经表示,将它与32位相提并论是D2的一个重要优先事项(现在更确切地说是Andrei Alexandrescu的书"The D")编程语言"已经发布".但是,他表示由于链接器问题,前几个版本将不支持Windows上的64位(这似乎仍然是真的).

对于D1,如果使用LDC(对象是LLVM的D编译器),则在Linux和Mac上支持64位.对于Windows,以GCC后端为目标的GDC编译器已经复活,但在曲线后面有几个版本.在D1上,这并不是非常重要,因为语言规范相当稳定.

对于D2,目前基本上不存在64位支持.前面提到的GDC确实支持它,但是D2一直在快速发展,GDC太过时了,在这里没用.为版本2.015(最新的GDC支持)编写的大多数非平凡代码可能甚至不会在版本2.040(最新版本的DMD)上编译,反之亦然.

编辑:截至今天,2010年6月21日,SVN中有一些提交对DMD的64位支持.这些远不是一个有效的编译器,但重点是它正在进行中.

编辑#2:截至2011年2月中旬,DMD 2.052支持Linux上的64位.

编辑#3:截至2011年11月,GDC是可用的,只有一个版本落后于DMD,虽然它有点像beta-ish而尚未打包.你必须从源代码编译它.

  • 更新:适用于Linux的64位DMD已于2011年2月17日发布(v2.052). (6认同)
  • 更新:GDC已经赶上了DMD前端,目前处于DMDFE版本2.052. (2认同)
  • 我们现在有适用于Windows的64位GDC二进制包. (2认同)