On Saturday, 14 March 2015 at 15:13:44 UTC, weaselcat wrote:
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.
This is the keyword: here. Don't expect to attract other kind of
developers if you have nothing to offer them. I am using D for 4
years now and I didn't even respond to these polls because I fill
as an outsider here. I don't find any use of levenshteinDistance
in my LOB applications, i'm keeping to use D for personal
experimental projects.
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.
Portability limited to an OS with 3% usage? std.c.windows is
older than my grandma and contains ANSI Windows bindings. But
nothing about WinRT. Even the Windows API model has changed in
the meantime:
https://msdn.microsoft.com/en-us/library/windows/desktop/hh802935%28v=vs.85%29.aspx
"D is a language with C-like syntax and static typing. It
pragmatically combines efficiency, control, and modeling power,
with safety and programmer productivity." - this is on the
landing page.
I see nothing about "system programming language". But I saw
something about productivity.
I can't really think of any language that doesn't implement
strings as an array of characters.
I understand very well the meaning of "immutable(char)[]" but I
try to walk in the first time user's shoes. The problem is that
using a string you must understand before concepts like
immutability. To sort them, well, you must buy a book.
complex numbers are much easier to implement than a good
currency system.
Again, just a some calls to WinAPI -
https://msdn.microsoft.com/en-us/library/windows/desktop/ms221612(v=vs.85).aspx
Oops, I forgot, we need portability and probably a very versatile
kind of currency supporting n bits instead a simple 128 bit
standard one and we must write some efficient code, not like the
one written by these illiterate programmers from MS. And these
functions are not pure and @safe. Let's rewrite them.
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#?
So having built-in Windows/OSX/Andoroid/iOS support, nice
documentation, real world functionality and a GUI system makes D
some kind of C#? Did I understand it correctly, or it's just a
pun?