3 ms·
It really reads like the author just wants Zig.
by _lvbh 2y ago
It really reads like the author just wants Zig.
- convolvatron 2y agoor maybe even D
- WalterBright 2y agoZig copies features from D!
- koolba 2y agoImitation is the sincerest form of flattery.
- WalterBright 2y agoYup. D is the source for a number of recent features in other languages. The reason I embarked on D is because C and C++ were too reluctant to move forward.
- agumonkey 2y agoDo you think you will keep moving forward for the next decade or will you merge when c/cpp becomes similar enough to D ? Maybe your group still has tons of ideas that need their own space to grow.
- WalterBright 2y agoThe ideas for advancing D come thick and fast. C and C++ will never merge with D, because we have different philosophies of what makes for a great programming language. For example, D will never have a preprocessor. Or over my dead body :-/
- koolba 2y ago> For example, D will never have a preprocessor. Or over my dead body :-/ Indeed. Compile time evaluation combined with a preprocessor would make for some serious head scratching when it comes to trusting trust.
- agumonkey 2y agoThanks a lot for your answer, I have another one, what languages or topics do you follow for inspiration regarding concepts ?
- WalterBright 2y agoI could spent 500% of my time studying other languages. So I don't, but the D user community isn't shy about doing that for me!
- bluGill 2y agoC++ is trying to eliminate the use of preprocessor. they can't get rid of it but you shouldn't use it.
- KerrAvon 2y agoStroustrup has been saying that in print since 1993, and it hasn’t happened yet.
- WalterBright 2y agoI see revision after revision of Standard C++, and no progress in that direction. I (along with Andrei Alexandrescu and Herb Sutter) made a proposal to add D's static if feature to eliminate the need for #if. It was vehemently rejected.
- childintime 2y agoThe biggest advance would be Microsoft adopt D.
- deleted 2y ago[deleted]
- ksec 2y ago>The reason I embarked on D is because C and C++ were too reluctant to move forward. I just want to take this opportunity to say thank you. While D may not taken up from the rest of the world. It has surely lived on in C, C++ and many other languages. Still wish more people would use Das C.
- WalterBright 2y agoYes, the influence is there. For example, C++ pivoted to using ranges instead of iterators, and even C# changed their iterators to be like D's ranges (or so I've been told).
- WhereIsTheTruth 2y agoI'm curious, is there any features, from any language, that you wish you had implemented, or want to copy, in D?
- WalterBright 2y agoThere's active work going on to add pattern matching. Just recently I completed the addition of move constructors. They are different from C++'s, and I bet they'll turn out to be much better.
- ksec 2y agoIdentity theft is not a joke, millions of families suffer every year! Michael!
- throwawaymaths 2y agomore importantly, though, zig deliberately doesnt implement a whole TON of things that D does. sometimes parsimony is called for. zig is basically c--+ where the + is the constexpr stuff.
- WalterBright 2y agoIt keeps adding D features anyway, like constexpr.
- throwawaymaths 2y agothe constexpr stuff has been around since the beginning[0]. concretely, what other thing from D do you claim zig has added since? [0] minimally 2019, 3 years in: https://youtu.be/Gv2I7qTux7g?si=p0kVhtB56GvVLLNr https://youtu.be/Gv2I7qTux7g?si=p0kVhtB56GvVLLNr
- WalterBright 2y agoD had compile time execution of functions in 2007. Order-independent top level declarations. Underscores embedded in integer literals. (I stole this idea from Ada, which had been forgotten. Soon after D popularized it, it became standard in other languages.) Continue or break to labeled loop. Fixed sizes for ints, longs, etc. Of course, I don't know if there's a straight line here, and Zig is welcome to use any features from D that they like. But it's just interesting that things innovated in D pop up in subsequent designs.
- UncleEntity 2y ago>> Continue or break to labeled loop. Hasn't Java had that since the beginning? rummaging around in my grammar folder... BreakStatement ::= "break" [ IDENTIFIER ] ';' ContinueStatement ::= "continue" [ IDENTIFIER ] ';'
- WalterBright 2y ago
- robterrell 2y agoThe author is the creator of D, so he's probably fine with D. And D is something like 25 years old. Whereas Zig is just a toddler.
- johnnyanmac 2y agoahh, that explains the ImportC comparisons. Also didn't realize that person is also a regular on HN as well.