▲ | WalterBright 2 days ago | ||||||||||||||||
> Yes but people wanted a language where you can't use GC. What do you think of C and C++ coming with extensive guides for best practices and what features to not use? Even so, D comes with an @nogc attribute which won't let you use the GC. Ironically, people complain that @nogc actually does not allow use of the GC. You can also use the -betterC compiler switch to not use the GC. Interestingly, Compile Time Function Execution works great with the GC, as one needn't have to do backflips to allocate some memory. Mozilla is orders of magnitude larger and more powerful than the D Language Foundation. | |||||||||||||||||
▲ | motorest a day ago | parent [-] | ||||||||||||||||
> What do you think of C and C++ coming with extensive guides for best practices and what features to not use? I feel that this is a disingenuous point and that you know better than this. For example, the poster child of C++'s "don't use this feature" cliche are exceptions, and it's origins are primarily in Google's C++ stye guide. https://google.github.io/styleguide/cppguide.html#Exceptions If you cross-reference your claims with what Google's rationale was, you will be forced to admit your remark misrepresents the whole point. You do not need to read too far to realize Google's point is that they have a huge stack of legacy code that is not exception-safe and not expected to be refactored, and introducing exceptions would lead their legacy code to break in ways that is not easy to remediate. So Google had to make a call, and they decided to add the caveat that if your code is expected to be invoked by exception-free code, it should not throw exceptions. Taken from the guide: > Because most existing C++ code at Google is not prepared to deal with exceptions, it is comparatively difficult to adopt new code that generates exceptions. I wonder why you left this bit out. If this is how you try to get D to shine, then you should know why it isn't. | |||||||||||||||||
|