But What About Productivity?
Over the years there have been many different "rapid application development" tools and technologies, and they've been more productive environments than C and C++. Smalltalk, Java, and even Visual Basic are all good examples of productive application development environments. Unfortunately, they're also good examples of environments that, for one reason or another, haven't enabled developers to create long-lived applications.
Until these "productive" development environments mature to the point at which companies can trust them for long-lived, mission-critical applications, there will always be a role for C and C++. The reason is that for large applications, organizations don't want to face the hassle of rewriting an application every four or five years. After all, many organizations have mainframe applications that have lasted for 25 years or more, so why should they be forced to rewrite their new applications so soon?