C Programming Language
The C programming Language was made for Unix. The creators of the language were also same. "Unix is Ken Thompson with an assist from Ricthie and C is Dennis with an assist from Ken" observed Kernighan.
B comes before C
C traces its origins back to MIT and Project MAC. Its grandfather was BCPL, designed by Martin Richards, a British computer Scientist who was at MIT briefly during 1960s. BCPL was developed as an offshoot of the Multics project.
When Thompson first created Unix, it was written completely in assembly because of the lack of resources. Afterwards, though, Thompson decided that Unix should have a programming language of its own. The language had to work on an undernourished piece of hardware. The solution was to design a stripped doen version of BCPL, called B which Ritchie described as BCPL squeezed to run on a computer with a meager ration of memory and "filtered through Thomspon's Brain".
Language for New Machines
Both BCPL and B were typeless languages.These languages could not differentiate between different types of data. The older machines operated upon the basic unit of "words" which was 16 bit for small machines and could go upto 32 bits for larger ones. However the size of the word remian fixed for a particular machine.But when PDP-11 was intoduced in 1970, the machine had the capability of recognizing more than one size of data objects. Ritchie capitalized on the more powerful PDP-11 to create "New B," which solved both problems, multiple datatypes, and performance. "New B" the name quickly evolved to "C" was compiled rather than interpreted, and it introduced a type system, with each variable described in advance of use.
The Programmer's Language
With C, Ritchie fashioned in 1972 a language to make that capability of the machines visible and usable to programmers. C was designed with the skilled professionals in mind. It is a language that resides fairly close to the machine - with its data types directly mapping to the hardware . Still, C is a language not wedded to a specific machine. Programs could be written that would run without any change on any machine that supports C. Ritchie and others laboured to enable C run on different machines. The first C compiler appeared circa 1972, over 30 years ago now. As the underlying UNIX system grew in popularity, so C was carried with it.