News for hackers. Stuff that matters.
Re:The Case for D by shin_lao on Friday October 30, 2009 @01:28PM (#912390)
I'm curious, why don't you want to do the switch to D2? Is it because it's not mature enough?
Re:The Case for D by Keyframe on Friday October 30, 2009 @01:50PM (#912434)
There are several reasons. I'll try to list them, but it might not be complete:

- D2 looks and feels foreign to me as a somewhat D1 experienced user

- Templates maelstrom and strong emphasis on them

- D1 grew organically, D2 looks like an academic exercise where stuff is put in just for the sake of it by the people that don't write programs in D at all (Andrei)

- D2 book and Andrei are a filibuster for D2

- Walter Bright listens to Andrei (ok, a smart guy) but he doesn't write D programs, I doubt even Walter writes them (seriously). If you look at his code, it is more of a C in D than D code.

- I have little to no trust in DMD/OPTLINK, LDC/LLVM is what I'm after and that front is D1 only, and looks like it will be

- Lots of people smarter than I am are on D1 also (Tango, namely) - and I don't want to go against the trend since it would isolate me from little support I can get

these are just of top of my head, there are more. General summation could lead to "It just doesn't feel right" - at least for me as a heavy D1 user.

Re:The Case for D by eldar on Saturday October 31, 2009 @04:29AM (#913385)
I wouldn't be that confident. D1 is a dead-end. If you ask a C++ user, he wouldn't drop C++ and a damn lots of libraries, IDE's, debuggers and industry support for it. I recently talked to my C++ friend writing scientific multithreaded stuff, and he was only convinced by D2.

Templates are the killer feature of D. There is nothing wrong in the emphasis on them.

Yes I agree that there are problems in D2. But there are much more problems in D1.

If I were you, I wouldn't do such an anti-advertisement campaign here. Instead you could have pointed at what you think are the problems with D2. That would be more constructive.

Re:The Case for D by eldar on Saturday October 31, 2009 @04:41AM (#913388)
>> ...the people that don't write programs in D at all (Andrei)

>> Walter Bright listens to Andrei (ok, a smart guy) but he doesn't write D programs

You stated twice that he doesn't write D programs. Well since you are mentioning Tango, it's unfair because he writes code for a _standard_library_. And he is writing a good code.

Re:The Case for D by baxissimo on Saturday October 31, 2009 @06:22AM (#913430)
I also don't think it's true. In addition to writing code for the std.* Phobos library, I think Andrei has been using D for data processing stuff related to his recently finished dissertation. He would make comments from time to time about this or that not performing well enough in std.*, and then go fix it.
Re:The Case for D by ponce on Saturday October 31, 2009 @10:20AM (#913561)
Walter rewrited his game Empire in D.
Re:The Case for D by ponce on Saturday October 31, 2009 @10:15AM (#913557)
Maybe you could have a read at Modern C++ Design by Andrei. A mind expanding book with incredible insight in meta-programming.

All this "template maelstrom" makes sense and is unavoidable to have powerful and expressive statically-typed languages.

Re:The Case for D by steveklabnik on Friday October 30, 2009 @01:49PM (#912431)
First of all, D2 is not mature at all. It's like asking "Is C++0x mature enough?"

Secondly, lots of people won't ever switch to D2, even when it's done, because they feel that it adds a lot of feature bloat for very little gain.

Re:The Case for D by ponce on Saturday October 31, 2009 @09:54AM (#913526)
I don't think many-cores compatibility is a little gain.
Re:The Case for D by steveklabnik on Saturday October 31, 2009 @11:21AM (#913609)
That's a compiler issue, not a language issue.
Re:The Case for D by ponce on Saturday October 31, 2009 @01:47PM (#913787)
A language without purity / proper constness / powerful static checking will not be automatically parallelized.
Re:The Case for D by h3r3tic on Saturday October 31, 2009 @01:49PM (#913789)
Wrong. D2 has features to ease multi-threaded development, so it's a language 'issue'.