tuxduino:
C was developed to overcome the shortcomings of B in porting the assembly-coded PDP-7 version of Unix to a PDP-11.Here's the relevant paragraph:
The origin of C is closely tied to the development of the Unix operating system, originally implemented in assembly language on a PDP-7 by Ritchie and Thompson, incorporating several ideas from colleagues. Eventually they decided to port the operating system to a PDP-11. B's inability to take advantage of some of the PDP-11's features, notably byte addressability, led to the development of an early version of C.
The original PDP-11 version of the Unix system was developed in assembly language. By 1973, with the addition of struct types, the C language had become powerful enough that most of the Unix kernel was rewritten in C. This was one of the first operating system kernels implemented in a language other than assembly. (Earlier instances include the Multics system (written in PL/I), and MCP (Master Control Program) for the Burroughs B5000 written in ALGOL in 1961.)
And here's the page address:
C (programming language) - Wikipedia
Very interesting (and nerdy) stuff
OK, I take it back -- there was a version of UNIX in assembly language. How about that. Apologies to AWOL!
But the point remains that C was developed firstly as a systems programming language, with the practical purpose of implementing the UNIX kernel. I think one of the reasons it has lasted so well is because it grew out of the immediate need for a tool for this very practical and challenging task. Only what was needed to do the job was included. All very lean and minimalist -- no extra baggage here.