On Friday, 13 October 2017 at 13:14:39 UTC, Steven Schveighoffer
wrote:
On 10/13/17 2:58 AM, Peter R wrote:
Replying to a couple of the comments here
"I don't know if it's a different expectation or a different
mindset or something else."
I'd like to think I'm fairly knowledgeable, but Yes, I expect
installing/configuring to be easy and quick, so I can get to
the actual programming. I expect solid debugging capabilities,
full IDE support, autocomplete, and 64-bit windows libraries.
It is just some of the things that I am used to with Visual
C++. "Better than C++" is my motivation to evaluate D, and to
me that goes beyond just the language and standard library.
If I, as a new user, don't have a solid first impression, I'd
have no expectation that the rest of the D ecosystem is
polished, and I would return to C++
Thanks for replying. I did not mean my post as a slight against
your knowledge, but really about my ignorance -- I don't know
what the expectations of a Windows user are. I think the
Windows users we do have on the core team (Walter being the
main one) probably aren't typical Windows developers. But my
experience seems to be most of the "I've tried to use D for 10
days and it sucks!" rants come from the Windows side, and they
are mostly about installation and IDE woes. On my mac, I just
do "dvm install 2.076.0" and I'm up and running.
I think at some point, an actual company will pick up the
maintenance of a good D IDE for windows, and will solve this
problem. Unfortunately, we have to rely on volunteers right
now, and that company hasn't materialized.
One note about your requirements, auto-completion I think is
something that I love about IDEs for other languages (I would
be lost in xcode without it) and is something I've never used
with D (all my attempts have been disasters). It's definitely
something we need to improve the experience on.
-Steve
The Windows experience is less good. Not just IDEs, but even a
simple thing like DMD paths. That's been broken ever since
longer Windows paths became common (the code dates back to 1987),
and it interacts badly with dub, which likes to make a relative
path going back up to the root directory and then back down again.
We have fixed that (Atila did the work) and will submit a pull
request once we're happy it meets the right level of quality and
have been using it a bit ourselves. But it's a nice illustration
of the situation: on the one hand people are more inclined to
expect things to just work on Windows (less inclined to get their
hands dirty fixing them and to share the solution when they do),
and on the other they are more likely to break and stay broken
for a long time:
https://github.com/kaleidicassociates/dmd/pulls
(The above path thing is a problem for command line too).
Then on top of that, there's the problem that the situation for
installing native libraries on Windows has been completely
insane, although it's starting to improve now. Most of the time
on linux it's a single command to install a library. It's more
of a blessing on Windows when that's possible, because it often
isn't. And if your benchmark is other ecosystems that take care
of installing the native C library for you, then D looks
needlessly complicated. (Even though it's a C on Windows thing,
not a D problem).