stringtranslate.com

Brian Kernighan

Brian Wilson Kernighan ( nacido el 30 de enero de 1942) [ 2 ] es un informático canadiense . Trabajó en Bell Labs y contribuyó al desarrollo de Unix junto a los creadores de Unix Ken Thompson y Dennis Ritchie . El nombre de Kernighan se hizo ampliamente conocido a través de la coautoría del primer libro sobre el lenguaje de programación C ( The C Programming Language ) con Dennis Ritchie. Kernighan afirmó que no tuvo parte en el diseño del lenguaje C ("es completamente trabajo de Dennis Ritchie"). [7]

Kernighan es autor de muchos programas Unix, incluido ditroff . Es coautor de los lenguajes de programación AWK y AMPL . La "K" de K&R C y de AWK significa "Kernighan".

En colaboración con Shen Lin, diseñó heurísticas conocidas para dos problemas de optimización NP-completos : la partición de grafos y el problema del viajante . En una muestra de equidad autoral, el primero suele denominarse algoritmo de Kernighan-Lin , mientras que el segundo se conoce como heurística de Lin-Kernighan .

Kernighan ha sido profesor de informática en la Universidad de Princeton desde 2000 y es director de estudios de pregrado en el departamento de informática. [8] [9] [10] En 2015, fue coautor del libro The Go Programming Language .

Vida temprana y educación

Brian Kernighan habla en un homenaje a Dennis Ritchie en 2012 en Bell Labs .

Kernighan nació en Toronto . Asistió a la Universidad de Toronto entre 1960 y 1964, donde obtuvo su licenciatura en ingeniería física . [7] Recibió su doctorado en ingeniería eléctrica de la Universidad de Princeton en 1969, completando una disertación doctoral titulada "Algunos problemas de partición de grafos relacionados con la segmentación de programas" bajo la supervisión de Peter G. Weiner. [11] [12]

Carrera e investigación

Kernighan ha sido profesor en el departamento de informática de Princeton desde el año 2000. [13] Cada otoño imparte un curso llamado "Computadoras en nuestro mundo", que introduce los fundamentos de la informática a estudiantes que no son de la especialidad. [14] [15]

Kernighan fue el editor de software de Prentice Hall International . Su serie "Software Tools" difundió la esencia del "pensamiento C/Unix" con modificaciones para BASIC , FORTRAN y Pascal , y lo más notable fue que su " Ratfor " (FORTRAN racional) pasó a ser de dominio público .

Dijo que si estuviera varado en una isla con un solo lenguaje de programación, tendría que ser C. [16]

Kernighan acuñó el término "Unix" y ayudó a popularizar la filosofía Unix de Thompson . [17] Kernighan también es conocido por acuñar la expresión "What You See Is All You Get" (WYSIAYG), que es una variante sarcástica del original "What You See Is What You Get" ( WYSIWYG ). [18] El término de Kernighan se utiliza para indicar que los sistemas WYSIWYG pueden descartar información en un documento que podría ser útil en otros contextos.

En 1972, Kernighan describió la gestión de memoria en cadenas utilizando "hola" y "mundo", en el lenguaje de programación B , [19] que se convirtió en el ejemplo icónico que conocemos hoy. La implementación original de Kernighan de 1978 de Hello, World! se vendió en The Algorithm Auction , la primera subasta de algoritmos informáticos del mundo . [20]

En 1996, Kernighan impartió el curso CS50 , que es el curso introductorio de informática de la Universidad de Harvard . Kernighan ejerció una influencia sobre David J. Malan , quien posteriormente impartió el curso y lo amplió para que se impartiera en varias universidades y en múltiples formatos digitales. [21]

Kernighan fue elegido miembro de la Academia Nacional de Ingeniería en 2002 por sus contribuciones al software y a los lenguajes de programación. También fue elegido miembro de la Academia Estadounidense de las Artes y las Ciencias en 2019. [22] [23]

En 2022, Kernighan declaró que estaba trabajando activamente en mejoras del lenguaje de programación AWK , en cuya creación participó en 1977. [24]

Libros e informes

Algoritmos

Publicaciones

Véase también

Referencias

  1. ^ Kernighan, Brian Wilson (1969). Algunos problemas de particionamiento de grafos relacionados con la segmentación de programas (tesis doctoral). Universidad de Princeton. OCLC  39166855. ProQuest  302450661. (se requiere suscripción)
  2. ^ ab La Biblioteca del Congreso. "Kernighan, Brian W. - Servicio de datos vinculados de la LC: Autoridades y vocabularios | Biblioteca del Congreso, de Servicio de datos vinculados de la LC: Autoridades y vocabularios (Biblioteca del Congreso)". id.loc.gov . Consultado el 3 de marzo de 2023 .
  3. ^ Lohr, Steve (31 de octubre de 2002). "A las artes liberales, añade la informática". The New York Times . Kernighan, de 60 años, es un científico informático.
  4. ^ Lenguaje de programación "C": Brian Kernighan - Computerphile en YouTube
  5. ^ Pike, Rob (7 de noviembre de 2018). «La historia de Unix». YouTube . Archivado desde el original el 23 de noviembre de 2021 . Consultado el 2 de mayo de 2020 .
  6. ^ Nerd Talk - Doug McIlroy y Brian Kernighan, 22 de octubre de 2021 , consultado el 16 de diciembre de 2023
  7. ^ ab Dolya, Aleksey (29 de julio de 2003). "Entrevista con Brian Kernighan". Linux Journal .
  8. ^ Página de perfil del autor Brian Kernighan en la Biblioteca Digital ACM
  9. ^ "Una historia oral de Unix". 11 de junio de 2007. Archivado desde el original el 11 de junio de 2007. Consultado el 13 de mayo de 2020 .
  10. ^ "Brian Kernighan | Departamento de Ciencias de la Computación de la Universidad de Princeton". www.cs.princeton.edu . Consultado el 13 de mayo de 2020 .
  11. ^ "Brian Kernighan - El proyecto de genealogía matemática". www.genealogy.math.ndsu.nodak.edu . Consultado el 13 de mayo de 2020 .
  12. ^ Kernighan, Brian W. (1969). Algunos problemas de particionamiento de gráficos relacionados con la segmentación de programas.
  13. ^ "Brian Kernighan | Departamento de Ciencias de la Computación de la Universidad de Princeton".
  14. ^ Kernighan, Brian. "COS 109, otoño de 2021: página de inicio". www.cs.princeton.edu . Consultado el 23 de agosto de 2022 . El curso tendrá básicamente la misma estructura que en años anteriores, pero las conferencias, los estudios de casos y los ejemplos cambian cada año según lo que esté sucediendo.
  15. ^ Kernighan, Brian. "COS 109: Computadoras en nuestro mundo" (PDF) . Princeton Education . Archivado (PDF) desde el original el 25 de marzo de 2017.
  16. ^ Budiu, Mihai (julio de 2000). "Una entrevista con Brian Kernighan".
  17. ^ abcd McIlroy, MD (1987). Un lector de Unix para investigación: extractos anotados del Manual del programador, 1971–1986 (PDF) (Informe técnico). CSTR. Bell Labs. 139. Archivado (PDF) desde el original el 2022-10-09.
  18. ^ "Brian Kernighan: Geek de la semana". Simple Talk . 2010-05-19 . Consultado el 2019-02-05 .
  19. ^ "EL LENGUAJE DE PROGRAMACIÓN B". Bell Laboratories. 16 de octubre de 2021. Archivado desde el original el 11 de junio de 2015.
  20. ^ "Brian Kernighan – Hola mundo". Artsy . Consultado el 18 de junio de 2015 .
  21. ^ Malan, David J. (2010). "Reinventing CS50". Actas del 41.º simposio técnico de la ACM sobre educación en informática . pp. 152–156. doi : 10.1145/1734263.1734316 . ISBN . 9781450300063.
  22. ^ "Dr. Brian W. Kernighan". Sitio web de la NAE . Consultado el 13 de mayo de 2020 .
  23. ^ "Brian W. Kernighan". Academia Estadounidense de Artes y Ciencias . Consultado el 13 de mayo de 2020 .
  24. ^ "La leyenda de Unix, que no nos debe nada, sigue arreglando el código fundamental de AWK". Ars Technica . 23 de agosto de 2022 . Consultado el 12 de mayo de 2023 .
  25. ^ D es de Digital: Lo que una persona bien informada debe saber sobre computadoras y comunicaciones ISBN 1463733895 
  26. ^ Brian Kernighan y Alan Donovan (2015) El lenguaje de programación Go ISBN 0134190440 
  27. ^ UNIX: Una historia y unas memorias ISBN 1695978552 

Enlaces externos