D, Java? To D or not to D?
Don Clugston
dac at nospam.com.au
Fri Jan 5 08:03:22 PST 2007
TPJ wrote:
> I decided to start with a simple statement: with this post I don't intend to
> start any flamewar. I'm definitely not a Java zealot, OS zealot, I'm not a
> zealot at all. I'm just a programmer who seeks for future technologies today.
> I'm doing it because I find investing in future technologies today very
> profitable. Of course only in case of really good technologies...
>
> I'm a freelancer programmer. I work under a GNU/Linux box and I'm interested
> in development of portable desktop apps (*nices, Windows, MacOSX, perhaps
> other OSes in the future) and games (the same OSes, plus mobile phones).
>
> A few years ago I switched from C/C++ to Python. The reason was simple: I was
> fed up with low-level development in C/C++, and I was impressed by high-level
> development in Python. All I did in C/C++ could be done in Python with one
> significant difference: code was written much, much faster.
>
> Now, after several years of using Python, I decided to switch from Python to
> Java. The reason is simple. Sometimes Python is too slow for my needs. Of
> course, I can use C in those cases. But using C means using another language
> and development becomes more complicated. In fact, I started to use Pyrex as
> well... Three different tools, no documentation standard for all of them...
> The hell.
[snip]
> So I ask myself a question today: should I invest in learning D? Is it worth
> my efforts?
It's the libraries.
The thing C# really has going for it is the .NET libraries. Likewise
Java. Their libraries are extensive, and were developed with massive
budgets.
Right now, D cannot compete with those libraries. We got nothin'.
BUT...
D is a language that seems to be made for writing libraries. It is
exceptionally easy to write rock-solid code in D. The powerful template
system, coupled with language features such as lazy evaluation, inner
functions, etc make it possible to create extremely appealing syntax for
library users. I believe it is possible to create nicer libraries in D
than in any of those other languages you've mentioned.
As a library developer, I reckon I'm about ten times productive in D as
in C++. I predict we'll see a rapid expansion in D library development
post-1.0.
The bottom line:
Don't use D right now unless you're prepared to do a lot of library
development. But expect the situation to change rapidly.
More information about the Digitalmars-d
mailing list