Am 01.11.2014 um 23:32 schrieb bearophile:
Paulo Pinto:

- arrays were bound checked (just use a compiler flags and dataflow to
remove them like any sane language)

D removes very little bound checks. No data flow is used for this.


- enums were strong typed

D enums are only half strongly typed.


- had namespaces or real modules

D module system has holes like Swiss cheese. And its design is rather
simplistic.


- no implicit type conversions

D has a large part of the bad implicit type conversions of C.


- had a sane macro system

There's no macro system in D. Mixins are an improvement over the
preprocessor, but they lead to messy code.


But I guess D already covers it...

D solves only part of the problems. And you have not listed several
important things. There's still a lot of way to go to have good enough
system languages.

Bye,
bearophile

Maybe I should spend more time playing around with D, instead of just advocating it.

However JVM/.NET languages with a grain of C++ salt for JNI/PInvoke, are what my employer and our customers care about, so I can't justify to our customers any alternatives.

As for the issues, I was being nice to C as those are the issues I find more problematic.

--
Paulo

Reply via email to