Jump to content

What do you think of... D


PhDP

Recommended Posts

I'm eager to hear the opinion of experts... so, what do you think about D (the programming language) ?

 

It's potentially as fast as C, with an option to use a garbage collector, yet for some reason it's not really popular yet.

Link to comment
Share on other sites

yet for some reason it's not really popular yet

 

I'm wondering if any unmanaged (non-framework) language will ever be "popular" again. Who writes an operating system anymore? Game programming is definitely on the rise, but the kids coming up through the ranks want to learn the languages that are already vested at the grind houses, so they're not going to look past C/C++, and even there managed code has made huge inroads thanks to Microsoft's XNA stuff.

 

It's pretty much up to you scientists and engineers. And we all know how popular you guys are. ;)

Link to comment
Share on other sites

D is conceptually awesome (a "fixed" C++) but unfortunately the compilers are a bit weak (namely DigitalMars).

 

While C++ is vastly more complex than D it also has untold man-years of research behind its compilers which D simply doesn't have.

 

There's also the problem of not having one definitive standard library. There are two: Tango and Phobos. Which should you use? Hard to say...

Link to comment
Share on other sites

D is conceptually awesome (a "fixed" C++) but unfortunately the compilers are a bit weak (namely DigitalMars).

 

While C++ is vastly more complex than D it also has untold man-years of research behind its compilers which D simply doesn't have.

 

There's also the problem of not having one definitive standard library. There are two: Tango and Phobos. Which should you use? Hard to say...

 

Weak compiler or not, it's one of the fastest language in town. And it's pretty new, v.1 was only released in 2007. So I guess my question is if D is a language with a bright future.

 

Python, JAVA, OCaml, C#; they're all great languages, and to be honest, I would rather use a language than JAVA or Python. But for some people (scientists, mathematicians, and probably game programmers), the speed of execution is a huge issue.

 

So it would be great if we had a modern language based on C/C++, with the ability of C/C++ to do low-level programming, but that would also allows automatic memory management and solve the basic issues with C/C++. This is what D is trying to achieve, and I hope it does, but I have no idea if it will.

 

Game programming is definitely on the rise, but the kids coming up through the ranks want to learn the languages that are already vested at the grind houses, so they're not going to look past C/C++, and even there managed code has made huge inroads thanks to Microsoft's XNA stuff.

 

I don't know much about game programming, but for huge projects they must certainly do most of the programming in C++.

Link to comment
Share on other sites

Weak compiler or not, it's one of the fastest language in town. And it's pretty new, v.1 was only released in 2007. So I guess my question is if D is a language with a bright future.

 

First, keep in mind that alioth is the domain of micro-optimizers who have months to sit around coming up with the fastest solution for what are typically relatively trivial problems. So take it with a grain of salt...

 

You might check out this article. The problem with D's compilers isn't the performance, but more compiler bugs. Speed is nothing without correctness:

 

http://timburrell.net/blog/programming/2008-06-22/d-postmortem/

 

Python, JAVA, OCaml, C#; they're all great languages, and to be honest, I would rather use a language than JAVA or Python. But for some people (scientists, mathematicians, and probably game programmers), the speed of execution is a huge issue.

 

So what's your performance qualms surrounding OCaml? As you can see it does quite well on the alioth benchmarks, coming in at #6 overall (beating out Java). It's also a very high level language, certainly more so than D, and also a more mature one.

 

I don't know much about game programming, but for huge projects they must certainly do most of the programming in C++.

 

While it certainly isn't the typical case, Naughty Dog used OCaml when developing the Jak and Daxter series.

Link to comment
Share on other sites

You might check out this article. The problem with D's compilers isn't the performance, but more compiler bugs. Speed is nothing without correctness:

 

http://timburrell.net/blog/programming/2008-06-22/d-postmortem/

 

I read the article, it was quite interesting. But v1 was only released in 2007. In fact the author wrote; In fairness, given how new D is, the overall stability and quality of the available compilers is actually quite impressive.

 

So what's your performance qualms surrounding OCaml? As you can see it does quite well on the alioth benchmarks, coming in at #6 overall (beating out Java). It's also a very high level language, certainly more so than D, and also a more mature one.

 

I have no problem with the performance of OCaml. I have a problem with the fact that it's not based on C :)

Link to comment
Share on other sites

I read the article, it was quite interesting. But v1 was only released in 2007.

 

The language is still some 9 years old...

 

In fact the author wrote; [i']In fairness, given how new D is, the overall stability and quality of the available compilers is actually quite impressive.[/i]

 

Yes, but you really have to take that with a grain of salt, especially considering this:

 

I really wish I could recommend D as a natural successor to C++, but given all the issues it’s currently facing, I just can’t. It’s simply not there yet, and I fear, given it’s current direction, that it never will be. [...'] I likely won’t be using it for any more projects until they can iron out the compiler stability and efficiency issues

 

I have no problem with the performance of OCaml. I have a problem with the fact that it's not based on C :)

 

Yeah, nobody wants to use a language in the ML family... except Aeternus :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.