Articulo de referencia

El lenguaje de programación C

El libro «El lenguaje de programación C» (a veces llamado K&R , por las iniciales de sus autores) es un libro de programación escrito por Brian Kernighan y Dennis Ritchie . Este...

El libro «El lenguaje de programación C» (a veces llamado K&R , por las iniciales de sus autores) es un libro de programación escrito por Brian Kernighan y Dennis Ritchie . Este último diseñó e implementó originalmente el lenguaje de programación C , además de codiseñar el sistema operativo Unix , con el que el desarrollo del lenguaje estuvo estrechamente ligado. El libro fue fundamental para el desarrollo y la popularización de C y aún hoy se lee y utiliza ampliamente. Debido a que el libro fue coescrito por el diseñador original del lenguaje, y a que la primera edición sirvió durante muchos años como estándar de facto para el lenguaje, muchos lo consideraron la referencia autorizada sobre C. [ 1 ] [ 2 ]

Historia

C fue creado por Dennis Ritchie en Bell Labs a principios de la década de 1970 como una versión mejorada de B de Ken Thompson . [ 3 ] Otro empleado de Bell Labs, Brian Kernighan , había escrito el primer tutorial de C, [ 4 ] y persuadió a Ritchie para que coescribiera un libro sobre el lenguaje. [ 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 denomina K&R C (por los autores del libro), a menudo para distinguir esta versión temprana de la versión posterior de C estandarizada como ANSI C. [ 6 ]

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

El lenguaje C se estandarizó por primera vez en 1989 (como ANSI X3.159-1989) y desde entonces ha sufrido varias revisiones. Sin embargo, no se ha publicado ninguna edición nueva de El lenguaje de programación C que abarque los estándares más recientes.

Recepción

La revista Byte afirmó en agosto de 1983: «[ El lenguaje de programación C ] es la obra definitiva sobre el lenguaje C. ¡No sigas leyendo hasta que tengas este libro!» [ 1 ] Jerry Pournelle escribió en la revista ese mismo 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 por el camino difícil. También te estás esforzando demasiado si lo conviertes en el único libro sobre C que compras». [ 9 ]

Influencia

El lenguaje de programación C se ha citado a menudo como modelo para la redacción técnica , y los revisores lo describen como de presentación clara y tratamiento conciso. Los ejemplos generalmente consisten en programas completos del tipo que uno probablemente encontrará en el uso diario del lenguaje, con énfasis en la programación de sistemas . Sus autores escribieron:

Hemos intentado mantener la brevedad de la primera edición. C no es un lenguaje extenso, y un libro voluminoso no le hace justicia. Hemos mejorado la explicación de características clave, como los punteros, fundamentales para la programación en C. Hemos perfeccionado los ejemplos originales y añadido nuevos ejemplos en varios capítulos. Por ejemplo, el tratamiento de las declaraciones complejas se complementa con programas que convierten declaraciones en palabras y viceversa. Como antes, todos los ejemplos se han probado directamente a partir del texto, que está en formato legible por máquina.

Prefacio a la segunda edición [ 10 ]

Programa "¡Hola, mundo!" de Brian Kernighan (1978)

El libro introdujo el programa "¡Hola, mundo!" , que imprime únicamente el texto "hola, mundo" como ejemplo de un programa mínimo funcional en C. Desde entonces, muchos textos han seguido esta convención para introducir un lenguaje de programación.

Antes de la llegada de ANSI C , la primera edición del texto sirvió como el estándar de facto del lenguaje para los escritores de compiladores de C. Con la estandarización de ANSI C, los autores escribieron la segunda edición de manera más consciente para programadores en lugar de escritores de compiladores, escribiendo,

El Apéndice A, el manual de referencia, no es el estándar en sí, sino un intento de transmitir los aspectos esenciales del estándar de forma concisa. Su objetivo es facilitar la comprensión a los programadores, pero no pretende ser una definición para los desarrolladores de compiladores; esa función corresponde al propio estándar. El Apéndice B es un resumen de las funcionalidades de la biblioteca estándar. También está pensado como referencia para programadores, no para implementadores. El Apéndice C es un resumen conciso de los cambios respecto a la versión original.

Prefacio a la segunda edición [ 10 ]

La influencia del libro "El lenguaje de programación C" en los programadores, una generación que trabajó por primera vez con C en universidades e industria, 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 se conoce a menudo como " estilo K&R " y se convirtió en el estilo de codificación utilizado por convención en el código fuente de los núcleos de Unix y Linux .

Véase también

Referencias

  1. 1 2 Ward, Terry A. (agosto de 1983). "C anotado / Una bibliografía del lenguaje C" . Byte . pág. 268. Recuperado 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. (1993b). Thomas J. Bergin; Richard G. Gibson (eds.). "El desarrollo del lenguaje C" . Segunda Conferencia ACM SIGPLAN sobre Historia de los Lenguajes de Programación (HOPL-II) . Ciudad de Nueva York: Association for Computing Machinery : 201–208 . doi : 10.1145/154766.155580 . Wikidata Q29392176 . 
  4. "Lánzate a probar cosas nuevas: Entrevista con Brian Kernighan" . Harmony at Work . 24 de octubre de 2009. Archivado del 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 . YouTube . Archivado del original el 21 de diciembre de 2021. Consultado el 11 de noviembre de 2018 .
  6. Kernighan, Brian W. ; Ritchie, Dennis M. (1978). El lenguaje de programación C (1.ª ed.). Englewood Cliffs: Prentice Hall . ISBN  978-0-13-110163-0. LCCN 77028983 . OCLC 3608698 . OL 4558528M . Wikidata Q63565563 .    
  7. Kernighan, Brian W. "El lenguaje de programación C, segunda edición" . Universidad de Princeton . Consultado el 18 de febrero de 2023 .
  8. Keninghan, Brian W. (1 de octubre de 2012). "Entrevista con Brian Keninghan sobre C y el lenguaje de programación C" . InformIT (Entrevista). Entrevistado por John Wait.
  9. Pournelle, Jerry (diciembre de 1983). "El usuario mira los libros" . Byte . pág. 519. Consultado el 24 de julio de 2016 . 
  10. 1 2 Kernighan, Brian W. ; Ritchie, Dennis M. (1988). El lenguaje de programación C (2.ª ed.). Upper Saddle River: Prentice Hall . ISBN  978-0-13-110362-7. LCCN 88005934 . OCLC 254455874 . OL 2030445M . Wikidata Q63413168 .    
  • El lenguaje de programación C , segunda edición ( información del artículo en Internet Archive)
  • El lenguaje de programación C : página de Dennis Ritchie con información sobre traducciones, erratas, etc.
  • El lenguaje de programación C - Página de Brian Kernighan (contiene prácticamente la misma información, aunque ligeramente más actualizada).
  • Respuestas a los ejercicios del lenguaje de programación C