On Saturday, 6 September 2014 at 02:30:50 UTC, Cassio Butrico wrote:
What criteria do you take into consideration for the choice of a programming language.

1. Platform support, language stability and solid backing.

Compiled imperative programming languages are more or less alike, so platform support is usually the criterion that affects selection most and closely related to stability (of all kinds).

2. Learnability. Comprehensible structure of libraries.

Learning a new imperative language is typically done in a week or less. It is learning the libraries that takes most time, so I prefer languages that use standard structuring of core libraries (less to learn).

3. Expressiveness and rapid evolutionary development. Basically cheaper development.

4. Type-safety.

5. Predictable performance and portability. C/C++/shader-languages supports this well.

6. Transparency.

I want to understand what goes on in the runtime. C supports this very well. Big frameworks does not. I avoid big frameworks if possible since I they tend to imply limitations that are hard to work around.

Quick evalution of D:

1. D lacks platform support, language stability and backing. I don't plan on using D for paid projects until I understand the compiler internals so well that I know that I can fix it myself.

2. D is fairly easy to learn, except for quirks. Libraries could be more comprehensible, but I don't depend on them since D interfaces with C/C++.

3. D has decent expressiveness. Better for rapid development than C/C++, but Python does better.

4. D has acceptable type safety, but could do better at compile time correctness.

5. I think the C world overall does better at performance and portability at the moment.

6. The D runtime structure is too big for my liking, and not very transparent, but if you go to the trouble of modifying the compiler anyway it is not all that bad.


Reply via email to