Why D is not popular enough?
Charles Hixson via Digitalmars-d
digitalmars-d at puremagic.com
Mon Aug 1 11:21:05 PDT 2016
On 08/01/2016 09:37 AM, eugene via Digitalmars-d wrote:
> On Monday, 1 August 2016 at 15:31:35 UTC, Emre Temelkuran wrote:
>> For years, i was travelling along Golang, Rust, Perl, Ruby, Python,
>> PHP, JScript, JVM Languages.
>> Lastly Crystal Lang and Nimrod, Julia, Haskell, Swift and many more
>> that i can't remember.
>>
>> I'm 24 years old, my first lang was PHP and VBasic then C,C++ and i
>> first heard about D after 2005 when i was 14-15 years old.
>>
>> I always ignored D, i prejudiced that D failed, because nobody were
>> talking about it. I decided to check it yesterday, it has excellent
>> documentation, i almost covered all aspects. I think D is much better
>> than the most of the other popular langs. It's clear as JScript,
>> Swift, Julia and PHP, also it's capable enough as C,C++. I think D
>> deserves a bigger community.
>>
>> Why people need NodeJS, Typescript etc, when there is already better
>> looking lang?
>> Everyone talking about how ugly is Golang. So why people are going on
>> it? Performance concerns? Why languages that are not backed up by
>> huge companies are looking like they failed?
>
> maybe another reason is that people who tried to use D still think it
> is unstable
I have never experienced D as being unstable. I have, however,
experienced problems using various libraries with D. Whenever you need
to use a foreign library you invite problems, but D wrappers around
libraries have a habit of showing up and then not being maintained.
THAT has caused me problems...enough problems that if I don't need the
performance I'll pick Python.
As for D1 being a failure...that depends on what you wanted to do with
it. Until it started being influenced by Tango I was quite pleased, and
even Tango wasn't all bad. It had a few good unicode tools that haven't
yet been incorporated into D2. D2 I'm less satisfied with, though that
may just be a rosy-glasses memory of D1. Most of my needs aren't fancy
compile time techniques but rather run-time techniques. (I did mention
Python as the alternate rather than C++.) But what the best language is
depends a lot on what you are doing. To talk in terms of other
languages, Objective C is a better language for my needs than C++. It
isn't really because of the commitment to 16-bit unicode, but outside of
that... So in either version of D I have mixed uses of 8-bit unicode and
32-bit unicode. D seems to handle this better than any other language.
And it's got lots of other nice features. I love garbage collection, as
I hate memory management. I'm less attracted to ranges as implemented
by D, though I like them in Ruby and Python. A lot of this has to do
with what gets done at compile time and what gets done at run time,
though, so for me that just means that I'd rather avoid needing to use
ranges when I need speed. For my purposes the template language is
overblown, and I'd be satisfied with a much simpler form with some
run-time supplementation...but different people would like different
simplifications even among those who want it to be simpler. Traits,
e.g., I find indispensable (especially isPOD) and I need to be able to
test THAT at compile time, but most people who talk about templates
don't even mention traits.
Many languages become significant when there is an popular application
or library that depends on them. Others grow slowly. There *is*,
however, a network effect, so that popular languages tend to become more
popular, and this is often driven by a "niche" application (a place
where there is no competition, so everyone who wants to work in that
niche must use that language). An example of this, if you go back to
before it was popular, is JavaScript.
More information about the Digitalmars-d
mailing list