What criteria do you take

Marco Leise via Digitalmars-d digitalmars-d at puremagic.com
Sat Sep 6 06:54:53 PDT 2014


Am Sat, 06 Sep 2014 02:30:49 +0000
schrieb "Cassio Butrico" <cassio_butrico at ig.com.br>:

> What criteria do you take into consideration for the choice of a 
> programming language.
> and why? does not mention what language would be, but what 
> criteria led them to choose.

In a start-up:

- known and been used by many developers
- low potential of running into unsolved issues
- rich eco-system with a potential solution for anything I
  planned
- lots of free/open source solutions to get started without a
  big investment first
- works as well for programmers on Windows/Linux/OS X
- minimizes internal bike-shedding

In other words Java. :)
The only bike-shedding I ever had was weather we should write
getID or getId. One says "ID" is the correct abbreviation of
identification, the other says the field's name is "id" and
camel case rules dictate "getId".



Personally it just comes down "fun to work with" and my bias
towards maximum efficiency and static checking through the
compiler. D ranks very high here.

+ templates, CTFE and UDAs are fun to work with; it is easy to
  do meta-programming with these tools
+ if needed also works as a "better-C"
+ can use efficient C libraries without conversion layer
+ dynamic linking allows for small native executables and
  memory reuse of already loaded read-only segments of
  phobos2.so.
+ lots of static checking and template constraints
+ removes friction between systems by defining long as 64-bit
  and character arrays to be in Unicode encoding

- incompatible ABI between compiler vendors requires 3
  installations of the same lib to do testing with each
- inline ASM syntax also diverges between vendors
- GC implementation and efficiency issues
- being flexible, safe and efficient at the same time is
  sometimes a liability; e.g. File.byLine buffer reuse issue,
  Java taking the freedom to offer inefficient operations on
  all containers to keep them interchangeable.

Before D I used Delphi. It is IMHO the best programming
environment for efficient, native GUI applications on Windows.
It comes with integrated compiler, linker, debugger and that
sort of stuff and the GUI designer is integral part of the
IDE. Most other GUI designers feel like or are an external
tool with no interaction with the code editor.

-- 
Marco



More information about the Digitalmars-d mailing list