A systematic, empirical study of a subject is a science by definition.
Nope, falsifiable experiments are. That's what allows use to make predictions.
WHERE did you get the idea that C++ is more immune to memory leaks or buffer overflows than C? C++ adds to the basic C memory management services and memory organization, but it still retains the original C ones. And adds an additional way to leak memory - undisposed objects.
Probably from experience: Consistent use of stl memory classes (shared_ptr and unique_ptr) and containers (mostly std::vector) make it very hard to shoot yourself in the foot. Adhere to "Raw pointers don't transfer livetime from function to function" if you use raw pointers. These things are really easily spotted by code-review.
and then provide native code layer to provide an interface for computational demanding stuff.
Well, they are moving in that direction with QML. For many apps, a native UI makes perfect sense. Not only if the UI is very demanding, but also when the UI is very simple: staying in one programming language keeps things simple.
Indeed he didn't. The whole thread was about native vs. non-native code, where C is just an example of native code.
C++ is another example, closely related to C, with all the relevant properties. for example, you don't pay (performance) for abstractions/features you don't use. (exceptions, garbage collection, virtual function calls/inheritance)
Computer Science is the only discipline in which we view adding a new wing to a building as being maintenance -- Jim Horning