My two cents on what D needs to be more successful...
Ecstatic Coder via Digitalmars-d
digitalmars-d at puremagic.com
Sat May 20 22:52:11 PDT 2017
Since a few months, I'm using D for all my command-line tools.
For that use case, the language and its standard libraries are
really perfect, making it the best scripting language I know,
completely exploding JavaScript, Python, Ruby, etc.
Now I would like to also use it to develop :
- web servers.
- connected desktop applications & games.
- connected mobile applications & games.
D could also explode the competition for these uses cases, but I
think that first it would need to be more *equipped* and
*branded* for this.
IMHO, to convince many Java/C#/C++/PHP/Python/Ruby/JavaScript/etc
developers to leave the comfort of their current ecosystem, D
would need :
* the following *standard* libraries :
- std.database (connect/use MySQL/MongoDB/etc databases)
- std.web (serve web data/files/pages)
- std.audio (load/play/process/record sounds/musics)
- std.image (load/show/process/record images)
- std.video (load/show/process/record videos)
- std.graphic (draw 2D/3D graphics)
- std.input (get mouse/touchscreen/etc events)
- std.ui (draw 2D user interfaces)
* a dedicated IDE, allowing to effortlessly
open/compile/execute/debug a single ".d" file as well as an
entire project.
* a soft-realtime garbage collector (like in Nim), which can
progressively recycle the memory of a thread without blocking the
whole application.
I agree that at the moment, all these developments can be
possible through several third-party libraries.
For the web servers, vibe.d is already there.
For desktop applications, there is gtkd and dlangui.
And for mobile applications, maybe using wrappers for SDL and a
fast hardware accelerated UI library like TurboBadger/Nuklear/etc
would do the job.
And I know that several IDE are already available.
For instance, Coedit is a nice little IDE, despite its bugs and
limitations.
So I know that D could get the job done.
But with some efforts...
And it doesn't feel immediately "equipped" for that...
That's sad, because I think D could be the best tool on the
market to develop cross-platform connected mobile/desktop
applications, including mobile 2D games.
And even if it is already the case, at least that doesn't *show*,
even from the dlang.org website.
A more complete standard library, and a more appealing website (à
la juce.com) which would clearly "sell" D's strong advantages
over its competition, could be of great help.
Because the day when D will make it really *easy* to do these
kind of developments, just by simply installing the standard D
environment and reading a few tutorials on how to do
web/console/desktop/mobile app/games on dlang.org, it will be
very hard for other languages to compete with it...
More information about the Digitalmars-d
mailing list