I definitely have a number of gripes with the language, but it's not enough to stop me from trying it out. I didn't realize changes occurred so quickly, but I don't think they break old code very frequently. Most changes appear to be bug fixes or additions to the language.

Here's my list of pro's and con's for D (off the top of my head)

con's:
Documentation - It's scattered and tough to find
Random limitations - Certain obscure usage cases aren't supported. These seem to go away over time No const - C++ style const for functions doesn't exist - both const functions and const function parameters
Multiple incompatible "standard" libraries - Both the basic library and STL
Terse error messages

pro's:
unit tests built in
in and out contracts built in
Changed template architecture (relative to C++)
Close to C performance
It's new - Something for me to learn, maybe even put on the resume if the language takes off tuple support - I only recently noticed this. Some cool generic programming tricks...
Terse error messages
Delegates
for_each - A vast improvement over iterators (from an implementor's standpoint)
Simpler operator overloading
static if

Jeff Nowakowski wrote:
On Sat, 2007-03-31 at 16:09 -0400, Don Dailey wrote:
I know that the author of D has not emphasized optimizations
but I think he is now that it has reached version 1.0 and
beyond.

I've been following D via their newsgroups.  The "1.0" version was a
joke.  The long wait and big coming out party implied that it was stable
and big feature changes would wait for a much later version.  In
reality, several critical bugs were immediately found (but quickly
fixed) after release.  The really crazy thing is that it seems like
every new 0.001 version brings out changes to the core language.  I kid
you not; have a look at the Changelog:
http://www.digitalmars.com/d/changelog.html

The author is working on some pretty drastic stuff, too, trying to make
D into a powerful macro language, so that you can build your own domain
languages in D.

Don't get me wrong, I'm not dismissing the language.  D is a cool
language and a worthy C/C++ replacement.  Walter (the author) does good
work at an amazing pace.  He even finds time to fix obvious performance
problems when they are pointed out.  I just wanted to correct the
impression that D is stable and being optimized.

I'd also say that using C when a sane alternative keeps you within 1.5
the speed of C is nuts, but to each their own :)

-Jeff

_______________________________________________
computer-go mailing list
[email protected]
http://www.computer-go.org/mailman/listinfo/computer-go/


_______________________________________________
computer-go mailing list
[email protected]
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to