If you have to learn just one programming language

retard re at tard.com.invalid
Mon May 31 08:43:36 PDT 2010

I'm not sure if bearophile or some other language advocate posted this 
already, but:


"Here are my criteria for selecting (a non domain specific) language to 

"It should provide high level of abstraction so that programmer 
productivity is high. A fast running application written in C that takes 
6 months is — in most cases — not as useful as one that can be completed 
in 1 month: programmer cost as well as time-to-market considerations."

D is very close to C. The productivity is much lower than with other 
modern scripting or hybrid-functional languages.

"Speed: It should be fast (should approach C in speed)."

DMD is much slower than Sun Javac/Jvm 7, GNU GCC 4.5, and LLVM.

"Succinct: The language should not be verbose. This is very important. 
Brevity is one reason why Python and Ruby are popular."

For example the lambda syntax is terribly verbose in D compared to Scala 
or Haskell.

"It should be a mature and time-tested language with active development, 
user base and lots of applications."

D & DMD are unstable, badly specified, buggy and most dsource projects 
are deprecated (D1) or dead.

"Platform agnostic: It should not favor or give advantage to one 

DMD only works on 32-bit x86.

"Code readability and maintainability: It should be relatively easy for 
authors and others to maintain existing code."

Java 2-7 is very backwards compatible compared to D2.

"Opensource is a fine model, but if the author doesn’t want to release 
his/her creation under open-source he/she should be able to do so."

The official backend is non-free.

"Has a test framework that can generate and run tests."

The integrated unittest construct is a joke compared to JUnit et al.

More information about the Digitalmars-d mailing list