On Thursday, 23 August 2018 at 06:58:13 UTC, Joakim wrote:
On Thursday, 23 August 2018 at 03:50:44 UTC, Shachar Shemesh
wrote:
On 22/08/18 21:34, Ali wrote:
On Wednesday, 22 August 2018 at 17:42:56 UTC, Joakim wrote:
Pretty positive overall, and the negatives he mentions are
fairly obvious to anyone paying attention.
Yea, I agree, the negatives are not really negative
Walter not matter how smart he is, he is one man who can work
on the so many things at the same time
Its a chicken and egg situation, D needs more core
contributors, and to get more contributors it needs more
users, and to get more users it need more core contributors
No, no and no.
I was holding out on replying to this thread to see how the
community would react. The vibe I'm getting, however, is that
the people who are seeing D's problems have given up on
affecting change.
It is no secret that when I joined Weka, I was a sole D
detractor among a company quite enamored with the language. I
used to have quite heated water cooler debates about that
point of view.
Every single one of the people rushing to defend D at the time
has since come around. There is still some debate on whether,
points vs. counter points, choosing D was a good idea, but the
overwhelming consensus inside Weka today is that D has *fatal*
flaws and no path to fixing them.
And by "fatal", I mean literally flaws that are likely to
literally kill the language.
And the thing that brought them around is not my power of
persuasion. The thing that brought them around was spending a
couple of years working with the language on an every-day
basis.
And you will notice this in the way Weka employees talk on
this forum: except me, they all disappeared. You used to see
Idan, Tomer and Eyal post here. Where are they?
This forum is hostile to criticism, and generally tries to
keep everyone using D the same way. If you're cutting edge D,
the forum is almost no help at all. Consensus among former
posters here is that it is generally a waste of time, so
almost everyone left, and those who didn't, stopped posting.
And it's not just Weka. I've had a chance to talk in private
to some other developers. Quite a lot have serious,
fundamental issues with the language. You will notice none of
them speaks up on this thread.
They don't see the point.
No technical project is born great. If you want a technical
project to be great, the people working on it have to focus on
its *flaws*. The D's community just doesn't do that.
To sum it up: fatal flaws + no path to fixing + no push from
the community = inevitable eventual death.
Can you list what you or other Weka devs believe those fatal
flaws to be? Because you've not listed any here, which makes
you no better than some noob that comes in here, says D has to
get better or it will die, then can't articulate what they mean
by "better" or worse, mentions something trivial. Of course,
you've actually used the language for years, so presumably
you've got some real concerns, but do you really think the bug
you just posted is "fatal" to the language?
If you think there are fatal flaws, you might as well list
them, whether technical or the development process, or you will
just be ignored like any other noob who talks big and can't
back it up. You may be ignored anyway, ;) but at least you'll
have made a case that shows you know what you're talking about.
I'd define fatal as some that can be fixed, but breaks 100% of
everyone's code, even if the change is net positive all round.
However how big a problem really is is in the eye of the
beholder. An example:
Symptom: The compiler can't discard unused symbols at compile
time, and so it will spend a lot of time pointlessly optimising
code.
Problem: D has no notion of symbol visibility.
Possible Solution: Make all globals hidden by default unless
'export'.
Side effects: Everyone will be spending weeks to months fixing
their libraries in order to only mark what should be visible
outside the current compilation unit as 'export'.
Benefits: Faster compile times, as in, in the most extreme
example I've built one project on github with gdc -O2 and build
time went from 120 seconds to just 3!
Iain.