It starts now. To be eligible to win a free electronic copy of Learn to Tango With D all you need to do is to leave a comment below telling everyone what you like the most about the D language. The following rules apply:
- any off-topic comments will not be eligible to win
- you must enter your email address in the comment form, else I can’t contact you if you win — it will not be publicly visible — and you must also leave your name in the form else I won’t consider it a valid entry.
- I ask that you only leave one comment on the given topic so that everyone has the same odds of winning — obvious multiple entries will be ignored. I have no way to enforce this beyond the obvious so it’s on the honor system.
- I may cancel the contest at any time or refuse to give the prize to anyone at all. It would take something extreme to make me do this, but if you don’t like it don’t bother entering.
- comments posted after 11:59 pm GMT on Sunday, Jan 20 will not be eligible. So get your comment in before then.
That’s it. The winner will be chosen at random from the pool of eligible entries. I’ll announce the winner within three days after the close of the contest. Now tell me what’s so great about D!
Technorati Tags: D Programming Language, contest, programming books
I like D’s simplicity. I like the neat little improvements over C/C++. I like the performance. I like all the possibilities it gives, that it is not limited for certain applications. And what i like the most is the stunning meta programming
.
To the best language ever!
I like the fast compiles, and the GC. Had to go back to C++ for a bit today and it just makes me cringe. I actually managed to convince myself that STL was a nice library when I was using C++ everyday. But now having to go back to it for a day I just have to say “what on earth were they *thinking*??” So many common tasks were easier in C. Iostreams? Come on! I had to make an iterator and my D “auto” reflex kicked in — then oh damn I actually have to figure out what the flippin type of this iterator is. Grrr. “Wait for C++-0x” my arse.
Ok disqualify me — I think that’s more than one thing I like about D. (Seriously though, I already bought the Tango book, so I’m just posting to vent about my bad day of C++ programming).
As a professional C++ programmer, I like D because it “feels” like C++ with nice additions: no include files where you have to duplicate every declarations and no memory management when you don’t need it. One could think that C# or Java could fit this description but they also have a problem that D doesn’t have: with D, you don’t have to say: “Hey, try this (~100k) program… but before, install this 50 meg runtime…”!
D is an efficient, crossplatform, garbage-collected, compiled to native code language with multiple implementations. Code written in D can be clean and elegant.
Fast and easy Delegates. I never understood why creating a reference to a class method, or even just a simple function, had to be so darn hard in c++. Even some modern high-level languages make it way to difficult. What’s the problem? All you need to know is which method to call and what object data to use.
With D it takes two lines of code: one to declare the delegate, the other one to make it refer to a method. It’s no more difficult than declaring and assigning any other type of data.
That’s what I like about D. Well…that and pretty much the rest of the language.
What stunned me (in a pleasant way) and continues to stun, as I learn more and more about D is how well thought out it is. It’s the attention to “little” details that makes your life so much easier.
Take, for instance numerical constants, what could be simpler? And with C, C++, Java and C# already in existence, what can you add here?
Here’s what: binary constants (I ALWAYS wondered how hard could it be to have those in a language) and another small, but really neat feature – you can separate groups of digits using underscore. Not much of a feature one might say? Well, it doesn’t improve performance of your app, but for me, it sure improves language “handling”, meaning – less of my brainpower spent on insignificant details, more left for what’s really important.
Another thing I love in D is it’s QA-oriented features – unit tests, invariants, in/out blocks, etc. Haven’t seen anything like that in any other “C-like” language.
And – arrays! Now, that’s REALLY impressive! That’s the way arrays are supposed to be done, woo-hoo!
Now, having sad all that it really makes me sad to think that D is doomed to remain a “hobbyist’s language”. With all the powers that be behind C#/Java (and C++, of course – think of how many millions of lines of code there are in C++!), who or what can give D the boost it needs (no pun intended) to launch it into high orbit? (all the libraries, IDEs, debuggers, other tools..)
I sure hope I’m wrong on this one
P.S. I apologize if this comes out as a repost, my first attempt to post a comment returned “Sorry, but your comment has been flagged by the spam filter running on this blog…” message (was it my email address?
)
I humbly ask Aldacron to leave just one of these post in such case.
Thank you!
I love how D can be parsed for imports so that entire projects can be compiled without having to manually list dependencies. I save so much time not having to write Makefiles…
D will have great potential once it gets polished. Already it deals with the majority of the programming headaches involved with C/C++ without sacrificing anything. Plus a lot of the code ends up being cross platform without even really trying.
I love D for being a delicious blend of flexibility, performance and ease of use. Not a single feature in D feels ‘perfect’ or ‘pure’, yet their balance is unprecedented. I’ve yet to see another language that is trivial to program in, compiles in 1-10% the time of C++, is a breeze to debug, doesn’t require a bulky runtime and when compiled, can rival the performance of raw C.
i like D, couse it has speed of C++ and simplicity of Python!!
D – rocks!
I like D because, among other things, it has fantastic compile time abilities. With a little work, almost anything can be done at compile time including general code generation (e.g. BNF -> parser) and symbolic expression manipulation (backmath). While these features are likly available in other languages, D provides them in a native code language that is relatively easy to work with
Things I love about D:
- GC [that's easy to wrangle if need be]
- foreach
- anonymous functions, delegates
- nested functions
- mixins
- Tango kicks the pants off of C++’s STL
- built in dynamic arrays, slicing, associateive arrays
- backtraces!
Thins I don’t like about D:
- no good IDE support
- no good build tools that support mixing languages, external dependency checking, configure support, etc
- foreach need to be more powerful, how about a reverse foreach, or one with a custom advancement function (fibonacci?)
- two competing standard libraries
For years I have been waiting for someone to finally take the next evolutionary step in the world of systems programming. Walter Bright has finally done it with D. I’ve been watching high level languages evolve in the business world for 10 years, and this is equivalent to the advent of Java and .Net for the systems programmer.
Things I like the most:
- Improved developer productivity (IMHO even compared to Java with all IDEs)
- near-C performance
- responsive language designer
- blindingy fast compilation times. Imagine what Gentoo would be if Xorg, KDE and all major programs had been written in D.
- and many more less significant
Things I don’t like:
- sometimes it is hard to get new versions of DMD/GDC+DSSS+Tango+Tangobos working together. Hopefully it has changed with latest releases.
- ATM lack of proper linux debugger.
- lack of attention from employers.
What I like about D is it has the best of all worlds: hi performance, low level, high level, metaprogramming, compile-time goodies, FP toys, GC, explicit memory management, makes simple tasks simple.
What I don’t like is how closed is the main development, I hope Walter choose a more open development model in the future (I think phobos being in a public repo is a big step forward
.
Seems like D offers everything that average programmer would need. The thing which amazed me most of all is how D combines its power of garbage collector with wonderfull performance.
I have found D to have the best features of C++, Java, C#, and Objective C.
Well, there are a lot of great things about D, but my personal favorite is compile-time string manipulation and string mixins. It almost obviates the need for code generators and makes working with repetitive tasks much easier.
But kudos to most of the D features!
I like D because it let me do high level when necessery, but when necessery let me go as low level as I can. I like I can use gc when I’m lazy (or when It’s optimal) or to use manual alocation when necessery. So probably I like the “choices” I can make, the great freedom. But also, I really admire D Community like irc people or ng people. Great support when problems appear or to confront your ideas with reality.
Definitely the flexibility. As a multi-paradigm language, D has impressive, advanced features, and yet the code compiles into a blazingly fast binary. I can’t say that I’ve grokked all the features yet, but I’m slowly getting there. I can write my code how I want to, and have the ability to apply new methods and techniques as I learn them.
D is great because it lets you do things in a both low and high level, unlike many languages which insist that that one or the other is bad and should not be touched. It is also cleaner than C++ with many more modern featured.
No need to duplicate declarations in source and header files.
Clean syntax, extremely fast compiles, metaprogramming facilities, builtin arrays, slices, direct interop with C, scope guards, no getting in your way when you are going to shoot yourself, and more. I pretty love the language.
It’s a better C++ – it removes a lot of the dumb old cruft and replaces it with awesome features such as CTFE, mixins, garbage collection and it’s compatible with C. It’s an easy language to learn if you already know C or any other similar language.
If you’re tired of compiling things the compilers are blazingly fast as well – 10 minutes in C++ time is 1 minute on a slow PC in dmd time. And that is not an exaggeration…
Speed of C++, glued pyd with other. Faster development than C++ with possibilities of dynamic langueges. Simplecity with power. The idea to give programer all that is aviable in other langues, but not to enfore him to use it – like garbage collector and doing by self memory managment or using pointers and references.
I love D because there are no header files, the compiler is fast and has a built in profiler, DSSS the build system is great, the language evolution is face paced and Walter cares for his users, the language syntax is beautiful, the arrays are powerful, slicing is powerful, support for complex numbers and unittests, and I like the garbage collector and the lack of a virtual machine as well.
Possibly, though, the most wonderful aspect of D, is that it is owned and managed by a community of competent, caring developers.
D is a great language. I find that most of those who do not like D, haven’t given D a try.
Is it too late yet?
Pingback: The One With D » Blog Archive » And the winner is…
The D language is so pretty. Its compiler is so fast. Its productivity is so Great.
language is pretty explanatory and having the power of Objective-C/C/C++, JAVA, C# and Python gives it the boost.