On Friday, 24 April 2015 at 07:04:10 UTC, Ola Fosheim Grøstad
wrote:
On Friday, 24 April 2015 at 02:33:19 UTC, ketmar wrote:
On Thu, 23 Apr 2015 19:05:06 -0700, Walter Bright wrote:
On 4/23/2015 5:37 AM, "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?=
<[email protected]>" wrote:
Yes, it is because of modular artithmetics which is a D
design flaw.
Out of the innumerable posts you write, I can't recall one
which didn't
assert that whatever D does is wrong.
that's 'cause he don't talking about features done right. ;-)
Oh, but I have!! I've pointed out that the vision for D1 was
right, but D2 ruined it by adding cruft without fixing the
flaws... ;-)
Walter got A LOT right in his original _vision_ as represented
on his original website for D1:
- Taking current practice for C++ and building a better syntax
for the most common patterns.
- Clearly stating that a programming language should encourage
you to write code that is aesthetically pleasing on the screen
and make that easy.
- Clearly stating that language semantics should be so simple
that you didn't need a long specification for it.
- Clearly stating that performance was imperative as a goal for
the language and that D would not aim to replace higher level
languages like C#.
I can applaud to this, anyone who has exposed themselves to the
annoyances of C++ can applaud to this! And D1 was a step in the
right direction. A good start.
The vision was lost on the way to D2, and most unfortunately
the market for programming languages is a Winner Takes It All
market. D2 is only a marginal improvement on C++, and worse in
some areas. That can't win.
I find it worrying that the evangelical D users are perceiving
D as a compiled scripting language and claim it is similar to
Python... D semantics are not at all like Python. That can't
win.
I find it worrying that the people who say they want to use D
as a system programming language are into games, yet the
projected vision for the D leadership now is to make it a web
programming language that should ship with vibe.d. That can't
win.
I find it worrying that so many people attracted to D system
level programming are into games, yet game development needs
are ignored. That can't win.
D is lucky that Rust is annoying, Go is marginal, and Nim is
unknown, so people are stuck with ugly look C++ code.
There is a need to move towards something beautiful, and that's
not in Andrei's vision, but in the original D1 vision + the
improvements proposed by Bearophile, Timon Gehr and others. Or
swing 100% to Andrei's direction and improve significantly on
meta programming by adding pattern matching and partial
evaluation, so that you have something significantly better
than C++.
…but move...
Remember: It's a winner takes it all game.
I get so tired of non game devs spouting off about what they
think gamedevs do. Let me give you a clue, we are aware of the
internet. We do process strings and JSON. Not only that but we
usually do this stuff in C++, and it often sucks to write. There
is really only a small fraction of game code that tends to look
like low level C. There are people who spend all their time
writing this kind of code, but there are tons of other programers
doing other things. Farming this work out to C# isn't a
realistic option at runtime, and at tool time it requires
maintaining bindings. That's part of the reason D is attractive
to me as a gamedev. I WANT all those high level features, I want
them to be performant, and I want the ability to write low level
code when necessary. D1 just doesn't cut it.