The study http://www.adaic.org/whyada/ada-vs-c/cada_art.html compares the productivity of CeeLanguage versus AdaLanguage, with interesting conclusions.
Their findings from 8 years worth of data:
There should be no doubt that in the abstract or from a "pure technical" point of view and from the point of view of the developer, Ada is a much better language than C. However Ada was at its turn ridiculed in the writings of EwDijkstra and TonyHoare (not that they would have better opinion of C) because of unneeded complexities and CreepingFeaturitis in the language.
But all that it boils down in the end is that the distinction between "technical" and "commercial" is not quite as clear cut as we fantasize it to be. In any language or technology comparison, commercial advantages (marketshare, big money behind, etc.) will ultimately translate into commercial advantages. So it happened with C: it was there on the market sooner, developer got used to it, lots of portable libraries and the portable UnixOs were centered around C. By comparison, Ada standard was one of the most complex standards to be approved so it took a long while for compiler writers to produce adequate Ada environments (that were also significantly more expensive, I gather). In the end for a lot of non-safety critical projects, choosing Ada will translate into technical difficulties because tons of libraries were already available in C but not in Ada. C proved just GoodEnough technically, and economically it was an enormous success.
Ada programs can call C libraries.