学习D时要使用哪个编译器?

时间:2016-08-23 16:26:18

标签: d dmd ldc

我对学习D感兴趣。但是我有点被DMD所转变,因为它不是完全开源的。这就是我考虑使用LDC的原因,但我不确定它的状态是什么。在debian包中它说:

Version: 1:0.14.0.dfsg-1     
LDC already compiles a lot of D code, but should still be considered beta quality. Take a look at the
     tickets to get a better impression on what still needs to be implemented. 

我知道Debian存储库有时可能有点古老,但1.0.0似乎是最新的LDC版本。

我打算使用C编写的库。哪个编译器更适合这个目的? LDC还是DMD?我知道之前已经问过这个问题,但我发现的所有问题都比较陈旧,我想知道目前的情况。

1 个答案:

答案 0 :(得分:8)

  

我对学习D感兴趣。但是我有点被DMD转过来,因为它不是完全开源的。

修改:自2017年4月8日起,DMD为fully OpenSource

这只是关于后端的许可。整个开发都发生在Github上:https://github.com/dlang/dmd

我的建议是使用DMD,因为它具有最快的编译时间,这在学习语言时非常有用(严重的是它非常快!)。在Linux上,您可以使用install script

轻松安装DMD - 即使只是作为用户
curl https://dlang.org/install.sh | bash -s dmd

(有关更多说明和下载选项,请参阅downloads page。)

最后但并非最不重要的是,有一些很好的工具,比如rdmd(它允许类似脚本的DMD源文件执行),你应该熟悉它们,因为它们可以节省你很多时间和放大器;让D中的编程更加有趣!

  

这就是我考虑使用LDC的原因,但我不确定它的状态是什么。在debian包中它说:   我知道Debian存储库有时可能有点古老,但1.0.0似乎是最新的LDC版本。

"有点古老"是轻描淡写;-)
如果您想使用LDC,您应该明确地获取more recent release。截至目前1.0.0是最新版本,但1.1.0将很快发布(第二个测试版已经发布)。您还可以使用安装脚本获取最新的LDC:

curl https://dlang.org/install.sh | bash -s ldc