De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

El lenguaje de programación C (a veces denominado K&R , después de las iniciales de sus autores) es un libro de programación de computadoras escrito por Brian Kernighan y Dennis Ritchie , el último de los cuales diseñó e implementó originalmente el lenguaje, así como co-diseñó el sistema operativo Unix con cuyo desarrollo del lenguaje estaba estrechamente entrelazado. El libro fue fundamental para el desarrollo y la popularización del lenguaje de programación C y todavía se lee y usa ampliamente en la actualidad. Debido a que el libro fue coautor del diseñador del idioma original, y porque la primera edición del libro sirvió durante muchos años como el libro de facto estándar para el idioma, el libro fue considerado por muchos como la referencia autorizada sobre C. [1] [2]

Historia [ editar ]

C fue creado por Dennis Ritchie en los Laboratorios Bell en la década de 1970 como una versión aumentada de Ken Thompson 's B . [3] Otro empleado de Bell Labs, Brian Kernighan , había escrito el primer tutorial de C, [4] y persuadió a Ritchie para que fuera coautor de un libro sobre el idioma. [5] Kernighan escribiría la mayor parte del material "expositivo" del libro, y el manual de referencia de Ritchie se convirtió en sus apéndices.

La primera edición, publicada el 22 de febrero de 1978, fue el primer libro ampliamente disponible sobre el lenguaje de programación C. Su versión de C a veces se llama K & R C (después de los autores del libro), a menudo para distinguir esta primera versión de la versión posterior de C estandarizado como ANSI C . [6]

En abril de 1988, se publicó la segunda edición del libro, actualizado para cubrir los cambios en el lenguaje resultantes del entonces nuevo estándar ANSI C, particularmente con la inclusión de material de referencia sobre bibliotecas estándar . La segunda edición del libro (y a partir de 2018, la más reciente) se ha traducido desde entonces a más de 20 idiomas. En 2012, se publicó una versión de libro electrónico de la segunda edición en formatos ePub, Mobi y PDF.

ANSI C, estandarizado por primera vez en 1989 (como ANSI X3.159-1989), ha sido objeto de varias revisiones, la más reciente de las cuales es ISO / IEC 9899: 2018 (también denominada C17 o C18 ), adoptada como estándar ANSI en junio 2018. Sin embargo, no se ha publicado una nueva edición de The C Programming Language para cubrir los estándares más recientes.

Recepción [ editar ]

La revista Byte declaró en agosto de 1983, "[ El lenguaje de programación C ] es el trabajo definitivo en el lenguaje C. ¡No lea más hasta que tenga este libro!" [1] Jerry Pournelle escribió en la revista ese año que el libro "sigue siendo el estándar ... un poco conciso". Continuó: "Puedes aprender el lenguaje C sin tener a Kernighan y Ritchie, pero eso es hacerlo de la manera difícil. También estás trabajando demasiado si lo conviertes en el único libro sobre C que compras". [7]

Influencia [ editar ]

El lenguaje de programación C se ha citado a menudo como un modelo para la redacción técnica , y los revisores lo describen como una presentación clara y un tratamiento conciso. Los ejemplos generalmente consisten en programas completos del tipo que es probable que se encuentre en el uso diario del lenguaje, con énfasis en la programación del sistema . Sus autores dijeron:

Hemos tratado de mantener la brevedad de la primera edición. C no es un gran idioma y no está bien servido por un gran libro. Hemos mejorado la exposición de características críticas, como punteros, que son fundamentales para la programación en C. Hemos refinado los ejemplos originales y hemos agregado nuevos ejemplos en varios capítulos. Por ejemplo, el tratamiento de declaraciones complicadas se ve reforzado por programas que convierten declaraciones en palabras y viceversa. Como antes, todos los ejemplos se han probado directamente del texto, que está en formato legible por máquina.

-  prefacio a la segunda edición [8]
"¡Hola Mundo!" programa de Brian Kernighan (1978)

El libro introdujo el programa " ¡Hola, mundo! ", Que imprime sólo el texto "hola, mundo", como una ilustración de un programa C de trabajo mínimo. Desde entonces, muchos textos han seguido esa convención para introducir un lenguaje de programación.

Antes de la llegada de ANSI C , la primera edición del texto sirvió como estándar de facto del lenguaje para los escritores de compiladores de C. Con la estandarización de ANSI C, los autores escribieron más conscientemente la segunda edición para programadores que para compiladores, diciendo:

El Apéndice A, el manual de referencia, no es el estándar, sino nuestro intento de transmitir lo esencial del estándar en un espacio más pequeño. Está pensado para que los programadores lo comprendan fácilmente, pero no como una definición para los redactores de compiladores; esa función pertenece propiamente al estándar mismo. El Apéndice B es un resumen de las instalaciones de la biblioteca estándar. También está pensado como referencia para los programadores, no para los implementadores. El Apéndice C es un resumen conciso de los cambios de la versión original.

-  prefacio a la segunda edición [8]

La influencia del lenguaje de programación C en los programadores, una generación de los cuales trabajó por primera vez con C en universidades e industrias, ha llevado a muchos a aceptar el estilo y las convenciones de programación de los autores como práctica recomendada, si no como práctica normativa. Por ejemplo, el estilo de codificación y formato de los programas presentados en ambas ediciones del libro a menudo se denomina "estilo K&R" o " One True Brace Style " y se convirtió en el estilo de codificación utilizado por convención en el código fuente de Unix. y kernels de Linux .

Ver también [ editar ]

  • El lenguaje de programación C ++
  • La preparación de programas para una computadora digital electrónica

Referencias [ editar ]

  1. ↑ a b Ward, Terry A. (agosto de 1983). "Bibliografía C / A comentada de la Lengua C" . Byte . pag. 268 . Consultado el 31 de enero de 2015 .
  2. ^ Prinz, Peter; Crawford, Tony (16 de diciembre de 2005). C en pocas palabras . O'Reilly Media, Inc. pág. 3. ISBN 9780596550714.
  3. ^ Ritchie, Dennis M. (1993). "El desarrollo del lenguaje C" . Historia de los lenguajes de programación, 2ª edición . Consultado el 11 de noviembre de 2018 .
  4. ^ "Saltar y probar cosas: entrevista con Brian Kernighan" . Armonía en el trabajo . 24 de octubre de 2009. Archivado desde el original el 23 de julio de 2012 . Consultado el 3 de marzo de 2013 .
  5. Computerphile (18 de agosto de 2015). " Lenguaje de programación ' C': Brian Kernighan - Computerphile" . Consultado el 11 de noviembre de 2018 .
  6. ^ Kernighan, Brian W .; Ritchie, Dennis M. (febrero de 1978). El lenguaje de programación C (1ª ed.). Englewood Cliffs, Nueva Jersey : Prentice Hall . ISBN 0-13-110163-3.
  7. ^ Pournelle, Jerry (diciembre de 1983). "El usuario mira libros" . Byte . pag. 519 . Consultado el 24 de julio de 2016 .
  8. ^ a b Kernighan, Brian ; Ritchie, Dennis M. (marzo de 1988). El lenguaje de programación C (2ª ed.). Englewood Cliffs, Nueva Jersey : Prentice Hall . ISBN 0-13-110362-8.

Enlaces externos [ editar ]

  • El lenguaje de programación C , primera edición disponible en Internet Archive
  • "Programación en C" . Centro de Investigación de Ciencias de la Computación Bell Labs . 2004-06-13. Archivado desde el original el 21 de febrero de 2017 . Consultado el 17 de enero de 2017 .. Otra página archivada: "El lenguaje de programación C" . 2016-02-04.
  • Respuestas a los ejercicios del lenguaje de programación C