On 2011-04-17 22:27, Daniel Gibson wrote:
Am 17.04.2011 21:52, schrieb jasonw:
Gour-Gadadhara Dasa Wrote:

Well, http://d-programming-language.org/ page says: "D is a multi-
paradigm programming language that combines a principled approach
with a focus on *practicality*." and in my case I've *practical* need to
write GUI app.

That's certainly true, if you think of the potential D2 provides. In 5 -- 20 
years D will be a serious contestant and mature implementations beat C++ and 
traditional languages in many domains. Currently DMD produces much slower 
executables especially for high performance computing so you would be a total 
idiot to use D if the project time frame is less than 2 years.

*Much* slower? Really? What benchmarks are you citing?


If you want to build some fortune 500 website from scratch, D doesn't deliver 
the functionality you need right now. The PHP/Java/C# platforms have hundreds 
of millions worth funding backing them.

If you build a desktop application, D isn't the best choice, but you can still argue to 
your boss to use it instead because of your personal "productivity" issues. 
There's no other logical reason to use D instead of C++/Qt or some other mature GUI 
toolkit.

Bloated executables aren't suitable for embedded platforms either, but in 10 -- 
20 years we will have a D compiler that targets platforms with less than 4 MB 
of RAM+ROM. I find it unlike that we have a reliable D compiler for very small 
32-bit embedded devices in 5 years.

Do you really think in "10 -- 20 years" somebody will care of your code
runs in an embedded platform with only 4MB of RAM+ROM? Memory etc is so
cheap that these platforms will get more powerful.

Why should it take so long to have such a compiler?
On the one hand: Why are D executables so "bloated"?
1. Phobos and druntime is statically compiled in. On a really limited
embedded platform you wouldn't use Phobos anyway, but write your own
standardlib and runtime that suit your needs (it's not like anybody
would use full C++ with STL on such a platform. Well, probably not even
C++ at all or only a very limited subset).

This is quite a big advantage C and C++ have. The runtime will almost always be available on the platform and you can link to it dynamically.

You can use Tango as a dynamic library on Mac OS X and a Hello World application will be the same size as a Hello World application written in C.

--
/Jacob Carlborg

Reply via email to