4 ms·
I’m not convinced about your counter argument, let alone worst imaginable response. All I’m saying is if a new feature is added to C++, it doesn’t affect me an
by systemvoltage 5y ago
I’m not convinced about your counter argument, let alone worst imaginable response.
All I’m saying is if a new feature is added to C++, it doesn’t affect me and I can choose to pick which features are useful. I can still keep it absolutely minimal. C with some useful libs, and occasional OOP.
Why this is the worst possible answer? Obviously it works for me, it makes sense to me and it is perfectly logical in my view.
Others have said the language bloat creates burden when you read other people’s code. That makes sense to me.
Care to elaborate more? If you want to harshly criticize, it’s fine but you need to say a bit more so I can understand where you’re coming from. I just see a bunch of rhetorical statements.
- ncmncm 5y agoNothing is added to C++ without demonstrating usefulness. There is no "language bloat". If you fail to find any of it useful, it can only be by not paying attention. Yes, you can limit yourself to the C and Java subset, just as you can drive everywhere in first gear, can eat all your food raw, can crap in a hole. Just because you can does not make it a good idea. Objectively, the more your code looks like C, the worse it is, because you are inviting into it all of the flaws endemic to C code.
- dralley 5y ago>> Nothing is added to C++ without demonstrating usefulness. There is no "language bloat" "Bloat" doesn't require that the features are literally useless, merely that their usefulness doesn't justify their added complexity. And for many people, a huge portion of C++ falls into this category. Just look at the 18 different methods of initialization for an example of this. Or look at ranges, which seem to simultaneously be far more verbose than the alternatives in every other language, while having measurable negative impacts on compile times (that have spread throughout the stdlib, so even if you don't use them you have to pay for them). Ranges are certainly "useful" but the cost/benefit ratio is questionable.
- ncmncm 5y agoRanges had to be implemented without using the new language features that would make it easy and clean. Its authors had to use template-metaprogramming substitutes that are slow. As the language implementations catch up, the library can be upgraded and will get faster to compile. There are new initialization modes that are simpler. The old ones still have to work. But you don't have to use the old ones anymore.