This makes no sense. If this is your criteria, everyone programs in a subset of their favorite language. When's the last time you used gets()?
The point is that the tools to use shouldn't be artificially restricted. If someone wants to use protected inheritance, let them as long as they can show why it's necessary or beneficial.
Posted Jun 4, 2011 1:07 UTC (Sat) by cmccabe (guest, #60281)
[Link]
You're mixing apples and oranges. gets() isn't a language feature, it's a library function.
> The point is that the tools to use shouldn't be artificially restricted.
> If someone wants to use protected inheritance, let them as long as they
> can show why it's necessary or beneficial.
You didn't answer my question. When was the last time you used those features?
You say that programmers shouldn't be "artificially restricted" from doing things that are "necessary and beneficial", but those are weasel words. The reality is, you'll just define necessary and beneficial as whatever you've been doing. So if you've been throwing exceptions as pointers, it's obviously "necessary and beneficial" for the new code to do the same. If you haven't been using throw specs, obviously the new code shouldn't have them. But you're not using a subset of the language, oh no.
As a side note, what's with the gets() obsession in these programming language debates. I don't think I was even alive the last time someone used gets() in a real program.
Haiku
Posted Jun 4, 2011 1:11 UTC (Sat) by cmccabe (guest, #60281)
[Link]
Literally every comment has a completely different view of which C++ features are "evil." I don't think you can find even two distinct answers that agree. I can only imagine what a novice programmer, fresh out of school, would think after reading this :)
Haiku
Posted Jun 4, 2011 5:52 UTC (Sat) by elanthis (guest, #6227)
[Link]
It saddens me that it's become the norm to expect a "novice" who's had a full four years worth of a $100,000 education to have his first experience with real-world languages be a StackOverflow posting.