When we say that "Dennis Ritchie developed C language", do we mean that he has created a compiler (using an 'already' developed other language) which can compile the source code written in C language? if yes, what was language he used to write first C compiler? I understand a compiler is a program and we can create another compiler for C language using presently available C compiler. Is that correct?
migrated from stackoverflow.com May 16 '11 at 16:26
|
From wiki:
Also from wiki:
The first C compiler was also written by him, in assembly. This page from bell-labs answers most of your questions. |
|||||||||||||||
|
|
Check this out for a history lesson: http://www.livinginternet.com/i/iw_unix_c.htm
Also this might be interesting: http://cm.bell-labs.com/cm/cs/who/dmr/chist.html |
|||||
|
|
Dennis Ritchie used bootstrapping. Bootstrapping is simple idea, where you develop initial, simple compiler in assembly, then you use this simple compiler to compile your fully fledged compiler written in (a subset of) your target language. This is how Ritchie created very early last1120c compiler. |
|||
|
|
|
This article should answer your question: http://www.faqs.org/docs/artu/c_evolution.html The history of C is bound to the B language, for which Ken Thompson developed an interpreter. Ritchie used it for the very first stages of C development. |
|||
|
|
|
C was designed to allow to port Unix to other platforms without having to rewrite all the assembly code for the new platform. Hence the common saying that "C is portable assembler". This reflects that C is intentionally very close to a CPU (from around 1970) in abstraction level and is also the reason that most embedded software is written in some kind of C. So, C is intimately connected with Unix, and the Unix folks wrote the first C compiler based on earlier work to do what they needed. Please note that Kernigan and Richie wrote an excellent book on C which is probably one of the most influential reference works on a computer language, since it was so clear and concise that most readers could learn advanced subjects like pointers and recursion from it. |
|||
|
|