不同D编译器的Pros/Cons是什么?性能和标准遵从性/D2支持如何?调试器的支持程度如何?错误消息和IDE集成有多好?64位支持有多好?到目前为止我的想法:
DMD
GDC
最不发达国家
死了/没有工作的
我正在考虑瞄准手臂,我认为GDC是选择的工具,但我不确定。
发布于 2011-07-20 20:06:15
DMD是参考实现,后端和前端是开源的。代码生成的质量并没有那么高。
GDC和LDC都基于DMD前端,因此可能需要一段时间才能将新版本的前端合并进来。
由于它们使用的后端非常成熟和良好,这些编译器的质量主要取决于连接前端和后端的胶水代码。
最不发达国家和全球发展中心仍在积极发展,但主要是由少数几个人。
总之,他们需要一些人力。
发布于 2011-07-21 09:40:27
发布于 2012-02-25 00:06:06
截至2012年2月,最不发达国家似乎并不是一个实际可行的选择(至少在Debian上是这样)。
例如,考虑D书中的第一个程序
import std.stdio;
void main(string[] args)
{
writeln("Hello, world!");
}这将无法在我的系统上与土发公司一起编制:
hello.d(24): Error: module stdio cannot read file 'std/stdio.d'dlang.org上的第一个程序也是如此
import std.stdio;
void main() {
ulong lines = 0;
double sumLength = 0;
foreach (line; stdin.byLine()) {
++lines;
sumLength += line.length;
}
writeln("Average line length: ",
lines ? sumLength / lines : 0);
}这是因为我的最不发达国家不支持Phobos--当前的D运行库。看起来,构建一个包括Phobos在内的D2版本是可能的,但至少它在Debian上发布的方式并非如此。
GDC,当然还有DMD,都很好地编译了上面的内容。看起来GDC是最新的(DMD在两个月前发布了2.057,现在GDC支持它)。
对我来说,GDC是一个显而易见的选择,因为一个简单的'apt-get -V install gdc‘同时引入了编译器和Phobos运行时,没有任何问题(在Debian不稳定上测试)。
https://stackoverflow.com/questions/6767065
复制相似问题