If you’re into learning programming languages, you may what to check out a new programming language known as D. What is D? According to the developer’s website
D is a general purpose systems and applications programming language. It is a high level language, but retains the ability to write high performance code and interface directly with the operating system API’s and with hardware. D is well suited to writing medium to large scale million line programs with teams of developers. D is easy to learn, provides many capabilities to aid the programmer, and is well suited to aggressive compiler optimization technology.
D is not a scripting language, nor an interpreted language. It doesn’t come with a VM, a religion, or an overriding philosophy. It’s a practical language for practical programmers who need to get the job done quickly, reliably, and leave behind maintainable, easy to understand code.
A massive (743 page PDF) manual on the D programming language is available for free download from Dlang.org.
D is hardly new, it exists at least since 2000 or so. Unfortunately, it never got very popular and C++ is getting better.
Yea, I agree with Jan. I remember seeing D a long long time ago and thinking I should take a little time to look at it. I never did and didn’t hear of the language again until just now. In the meantime C++11 is here and C++14 I think is rolling out.
That doesn’t mean there is no place for D, but they certainly have to start doing a better job getting the word out about what makes them cool.
The main problem with D was only a single (and not very good) compiler available for a very long time, lack of an IDE support and lack of compatibility with existing C++ code base – it is not possible to use any C++ libraries with it, only C ones. That is of course not a D-specific problem, but it certainly doesn’t help for a language that is “selling itself” as a C++ replacement.
“D … doesn’t come with … a religion”
DIRTY HERETIC!
I consider D to be pretty old. I don’t think it will ever be mainstream, because most mainstream languages are the ones that embrace politics and bureaucracy (e.g. ECMAScript, urrrrgh). There are disadvantages in going non-mainstream, and D will be a hard sell. What language is available for a multitude of MCUs? A dev cannot be fluent in every programming language; most of us have to pick and choose when investing our time and effort. I would rather architect a big app with a core written in C and high-level logic in Lua.
I was pretty excited about D when I first looked into the language way back when. It fixed all kinds of stuff that C++ got terribly wrong, and it looked like a wonderful successor to C that would make safer code much easier to write.
Then I saw the schism that had developed over D’s standard libraries. If you ever want to kill a new and developing language, study what D did here and repeat it as closely as possible.