Cuando decimos que "Dennis Ritchie desarrolló el lenguaje C", ¿queremos decir que ha creado un compilador (utilizando un lenguaje 'ya desarrollado') que puede compilar el código fuente escrito en lenguaje C? en caso afirmativo, ¿cuál fue el lenguaje que usó para escribir el primer compilador de C? Entiendo que un compilador es un programa y podemos crear otro compilador para lenguaje C usando el compilador de C actualmente disponible. ¿Es eso correcto?
23
Mira esto para una lección de historia: http://www.livinginternet.com/i/iw_unix_c.htm
También esto puede ser interesante: http://cm.bell-labs.com/cm/cs/who/dmr/chist.html
fuente
Dennis Ritchie usaba bootstrapping . Bootstrapping es una idea simple, donde desarrollas un compilador inicial simple en ensamblaje, luego usas este compilador simple para compilar tu compilador completo escrito en (un subconjunto de) tu idioma de destino. Así es como Ritchie creó muy temprano el último compilador de 120c .
fuente
Este artículo debería responder a su pregunta:
http://www.faqs.org/docs/artu/c_evolution.html
La historia de C está ligada al lenguaje B, para el cual Ken Thompson desarrolló un intérprete. Ritchie lo usó para las primeras etapas del desarrollo de C.
fuente
C fue diseñado para permitir portar Unix a otras plataformas sin tener que reescribir todo el código de ensamblaje para la nueva plataforma.
De ahí el dicho común de que "C es un ensamblador portátil". Esto refleja que C está intencionalmente muy cerca de una CPU (desde alrededor de 1970) en el nivel de abstracción y también es la razón por la que la mayoría del software incorporado está escrito en algún tipo de C.
Entonces, C está íntimamente conectado con Unix, y la gente de Unix escribió el primer compilador de C basado en un trabajo anterior para hacer lo que necesitaban.
Tenga en cuenta que Kernigan y Richie escribieron un excelente libro sobre C, que es probablemente una de las obras de referencia más influyentes en un lenguaje de computadora, ya que era tan claro y conciso que la mayoría de los lectores podían aprender temas avanzados como punteros y la recursividad.
fuente