A few notes on choosing between Go and D for a quick project

weaselcat via Digitalmars-d digitalmars-d at puremagic.com
Sat Mar 14 08:13:41 PDT 2015

On Saturday, 14 March 2015 at 14:45:07 UTC, rumbu wrote:
> I watched silently this discussion and turns out that it will 
> end - as always - in some obscure debate about some obscure 
> languages or more than obscure features.
> I take the risk to be blamed, but let me tell you that the  
> developer world does not spin around R, Python, Fortran, 
> Haskell and Go. These are nice languages for a bunch of *nix 
> nerds or very specialized engineers but their usage is very 
> limited. The battle now is between C/C++/C#/Objective C/Java. 
> Even the abominable Javascript has a larger user base that 
> these languages.
> Secondly, the same futile waste of energy is consumed in 
> debates about portability. 97% of desktop system, 
> believe-it-or-not, are using various flavours of Windows and 
> some of them OSX. 95% of mobile devices are built on top of 
> Androis/iOS. There is important *nix usage in the server OSes, 
> but the usual developer will not start his programming career 
> writing server applications.

Regular desktop usage statistics don't apply to developer 
communities. The few times an OS survey was done here, it was 
overwhelmingly Linux IIRC. You can't expect people who don't 
use(or have access to) Windows/OSX to cater to those platforms.

D does not have a big corporation like Microsoft or Google 
backing it, it has people donating their own time.

D focuses on portability because it's a systems programming 
language, not .NET in native form.

> About built-in functionality: Let's say that I want to sort 
> some strings. After I am shocked enough to find out that D has 
> three types of string which in fact they are not strings but 
> some weird arrays of something called immutable(char), I'll 
> look at the sort function prototype:

I can't really think of any language that doesn't implement 
strings as an array of characters.

> Another one: there is standard library support for complex 
> numbers. Who's using these complex numbers? But who's using 
> currencies? I bet that more people are using currencies then 
> complex numbers. Despite the evidence, D has no standard 
> support for them. We, mortals, are expecting that 1 / 10 is 0.1 
> not 0.1000000001 and we don't give a damn about the meaning of 
> 2 + 3i.

complex numbers are much easier to implement than a good currency 

> So, IMHO, if you want to attract users, here is my list:
> - concentrate on most used OSes - Windows/OSX and Android/iOS.
> - don't write scary documentation;
> - offer standard functionality instead of the obscure one. It's 
> nice to have it, but the use case scenarios are rare.
> - a GUI will be nice. You know, that thing allowing the 
> developer to put a button and writing events... instead of the 
> sad black console used by nobody I know.

Followed by renaming it to D#?

More information about the Digitalmars-d mailing list