For applications and frameworks, other languages provide the abstractions in a less difficult to wrangle fashion. Ada is perhaps my favorite example but you actually don't even have to leave the C family -- Objective-C is very pleasant to use in such a role. (No, it's not just an Apple thing, I use it all the time for Linux and cross-platform code.)
That's the key restriction from Linus right there. He was talking about system-level code.
For everything else (application-level, frameworks, etc.), you need the abstractions that C++ provides.