On 02/09/2017 01:08 AM, Joakim wrote:
I agree that "coercion," or more accurately the tyranny of the default,
is the dominant factor in language popularity even today, but you're
reaching when you apply that to web frameworks too.
Fair enough. It was just another example trying to make the point that
"if you want to do X, then you have little choice but use Y" is, as you
say, the dominant factor in language popularity. I can grant that the
web framework examples are weaker examples.
D's problem on the client is that the popular platforms are still very
much tied to certain favored languages:
iOS - ObjC and Swift
Android non-game apps - Java
Android games - C/C++
Windows - C# or C++
Three of the four major client platforms all allow other languages (with
the fourth starting to with WebAssembly), but you're often fighting the
tide if you choose a non-default language so most don't bother.
That's a good way of explaining it, I like that.
We can make the dev experience more pleasant on those platforms, as I
believe has happened now that we support the MS toolchain on Windows,
but D is unlikely to become popular without a killer app that
demonstrates its suitability. That's not coercion, but something we can
I hope you're right, but I worry that even "killer app example" may not
be enough, and that the lack of one may turn out to be just another red
herring excuse for "why aren't using D". After all, I think vibe's
approach to server development comes very close to "killer app" yet, far
as I've seen, it doesn't appear to have proven a major win for D so far.
Then again, having D in the "my secret weapon" category has certain
benefits, too, so I guess I can't be TOO sour ;)
On Thursday, 9 February 2017 at 00:30:53 UTC, Mike wrote:
I think the D leadership are too busy addressing broader issues with
the language at the moment, so this specific case is just not a high
priority. Also, if it's not a priority to the them, then anyone that
does attempt to work on it will just suffer an eternity in pull
So, I would not recommend it as a project for anyone until the D
leadership decides to get involved.
I think this misunderstands how open source works: the whole point is
that you don't need anybody's permission to go do this. Walter and
Andrei, or any other OSS core team, are much more likely to approve
something if you have an implementation that works well. Look at Ilya
and what happened after he showed them Mir.
You're right, in theory. But Mike is unfortunately very right about the
whole "suffer an eternity in pull request purgatory."
I fixed an issue where "///"-style doc comments resulted in excessive
paragraph breaks...must've been over a year ago. Simple fix for a
nagging bug. The fix worked. Caused no problems. No controversy. And to
this day, just went completely ignored despite my periodic nagging about
it. Eventually got tired wasting my time babysitting the constant need
for rebasing and manual merge fixes just for something that proved
guaranteed to be ignored. And any PRs I have managed to get through were
all uphill battles the whole way.
We have far too high a threshold for letting things actually happen. It
didn't used to be that way, and that was a key reason why D became as
good as it's gotten in the first place.
So I'm not surprised people familiar with D go to lengths to avoid
putting the effort into PRs that are much more major than my
comparatively trivial PRs: It's proven to come with a depressingly high
likelihood of turning out to be a complete waste of time.
At the risk of sounding hyperbolic, I think this is D's next biggest
problem after the lack of any "If you want to do X, your only real
choice is D". Though I admit I might be a little biased on this
particular point though.