On Tuesday, 29 September 2015 at 17:33:04 UTC, Chris wrote:
This is not my impression. Even "geeks" don't touch D (I know this from personal experience), even when there's no risk involved, e.g. when writing a small internal tool. As soon as they hear they have to learn about ranges and map!(a => to!string(a)) and the like, they lose interest. Fear or plain laziness ("couldn't be ar*sed"), one of the two. "I certainly won't learn D" is a comment I've heard myself.

But that does what is happening here, when people who have invested time in D complain. Also generators, iterators and functional style programming (D ranges) is something many languages provide one way or the other. In my experience that is of limited use and more often than not explicit loops are more transparent and maintainable. Although if a language offers comprehensions I use those.

And yes, I know what Phobos offers and how people who publish Phobos-centric code write their D code. There is nothing particularly surprising about Phobos.

Projecting "fear" onto professional decision making is just a way to make excuses for D's shortcomings.

The shortcomings D has wouldn't even interest the majority of those who reject D. They wouldn't get deep enough in their daily tasks to find out.

Then we perceive reality quite differently. What I see is that people do try D, like qualities like syntactical familiarity and flexibility and then get disappointed. So basically people play with D, realize it is not where they expect it to be at, leave, then some time later they download D again, same shortcomings, leave... etc. Then at some point they share their frustration.

You've said it again. Java's design is orthodox, so IBM embraced it. Again, people prefer simple set menus, rules and strict guidelines. It's more of a psychological thing than objective risk aversion.

D isn't particularly novel either, lots of Simula67/C++ influence, so I don't really see how this works. IBM did it for competitive reasons.

One example that come immediately to mind is data processing in Python. A lot of it is parsing and counting which is much faster and often easier to do in D/Phobos.

D can work as a replacement solution for parts of Python's domain. IMO Python "replaced/complemented" sed/awk/perl/bash/php/etc, so that would be a rather small portion of Python usage. And that is the primary reason for Python's adoption, I think, it replaced not a single tool, but people got to use one tool instead of multiple tools.

I think it is. It took me a while to realize this. Why is there this passionate hostility towards D? I don't go to a Go or Rust forum to tell them that I don't like this or that feature and that it's all crap. I've decided they're not the right tools for what I need and that's it.

Ok, but this is actual D users complaining, not Go and Rust users.

The reason is much more likely that the expectations are set at a level where D does not deliver. If you want a production environment to be judged favourably it is a good idea to set the expectations one notch below what you deliver. There is a bit too much hubris in how D is portrayed and therefore you get a backlash, from actual D users.

People also complain in Go fora, and certainly in C++ fora (lots of sulking over accumulated syntax bloat), but with Go they know that the language is set in stone because the language designers are very clear in their communication. So the complaints is more along the lines of "Go is kinda boring, but I can use it for XYZ, then use other languages for W".

In Rust the moderation is quite harsh and the language is also too new for users to "give up" on it.

Reply via email to