stringtranslate.com

Tony Hoare

Sir Charles Antony Richard Hoare también conocido como Tony Hoare o por sus iniciales CAR Hoare ( / h ɔːr ɑːr ə / ; nacido el 11 de enero de 1934) es un científico informático británico que ha realizado contribuciones fundamentales a los lenguajes de programación , algoritmos , sistemas operativos , verificación formal y computación concurrente . [3] Su trabajo le valió el Premio Turing , generalmente considerado como la más alta distinción en ciencias de la computación, en 1980.

Hoare desarrolló el algoritmo de ordenamiento quicksort en 1959-1960. [4] Desarrolló la lógica de Hoare , una base axiomática para verificar la corrección del programa . En la semántica de la concurrencia , introdujo el lenguaje formal comunicando procesos secuenciales (CSP) para especificar las interacciones de los procesos concurrentes, y junto con Edsger Dijkstra , formuló el problema de los filósofos comedores . [5] [6] [7] [8] [9] [10] Desde 1977, ha ocupado puestos en la Universidad de Oxford y Microsoft Research en Cambridge .

Educación y vida temprana

Tony Hoare nació en Colombo , Ceilán (ahora Sri Lanka ) de padres británicos; su padre era un funcionario colonial y su madre era hija de un plantador de té. Hoare se educó en Inglaterra en la Dragon School de Oxford y en la King's School de Canterbury . [11] Luego estudió Clásicos y Filosofía ("Grandes") en el Merton College de Oxford . [12] Al graduarse en 1956, hizo 18 meses de Servicio Nacional en la Marina Real , [12] donde aprendió ruso. [13] Regresó a la Universidad de Oxford en 1958 para estudiar un certificado de posgrado en estadística , [12] y fue aquí donde comenzó a programar computadoras , habiendo aprendido Autocode en el Ferranti Mercury de Leslie Fox . [14] Luego fue a la Universidad Estatal de Moscú como estudiante de intercambio del British Council , [12] donde estudió traducción automática con Andrey Kolmogorov . [13]

Investigación y carrera

En 1960, Hoare abandonó la Unión Soviética y comenzó a trabajar en Elliott Brothers Ltd , [12] una pequeña empresa de fabricación de computadoras ubicada en Londres. Allí, implementó el lenguaje ALGOL 60 y comenzó a desarrollar algoritmos importantes . [15] [16]

Participó en el desarrollo de estándares internacionales en programación e informática, como miembro del Grupo de Trabajo 2.1 de la Federación Internacional de Procesamiento de Información (IFIP) sobre lenguajes algorítmicos y cálculos, [17] que especificó , mantiene y soporta los lenguajes ALGOL 60 y ALGOL 68. [ 18]

En 1968 se convirtió en profesor de Ciencias de la Computación en la Queen's University de Belfast y en 1977 regresó a Oxford como profesor de Computación para dirigir el Grupo de Investigación de Programación en el Laboratorio de Computación de la Universidad de Oxford (ahora Departamento de Ciencias de la Computación, Universidad de Oxford ), tras la muerte de Christopher Strachey . Se convirtió en el primer profesor de Computación Christopher Strachey desde su creación en 1988 hasta su jubilación en Oxford en 2000. [19] Ahora es profesor emérito allí y también es investigador principal en Microsoft Research en Cambridge , Inglaterra. [20] [21] [22]

El trabajo más significativo de Hoare ha sido en las siguientes áreas: su algoritmo de ordenamiento y selección ( Quicksort y Quickselect ), la lógica de Hoare , el lenguaje formal que comunica procesos secuenciales (CSP) utilizado para especificar las interacciones entre procesos concurrentes (e implementado en varios lenguajes de programación como occam ), la estructuración de sistemas operativos de computadoras utilizando el concepto de monitor y la especificación axiomática de lenguajes de programación . [23] [24]

En una conferencia de software en 2009, Tony Hoare se disculpó hiperbólicamente por "inventar" la referencia nula : [25] [26]

Lo llamo mi error de mil millones de dólares. Fue la invención de la referencia nula en 1965. En ese momento, estaba diseñando el primer sistema de tipos integral para referencias en un lenguaje orientado a objetos ( ALGOL W ). Mi objetivo era asegurar que todo uso de referencias fuera absolutamente seguro, con comprobaciones realizadas automáticamente por el compilador. Pero no pude resistir la tentación de poner una referencia nula, simplemente porque era muy fácil de implementar. Esto ha llevado a innumerables errores, vulnerabilidades y fallas del sistema, que probablemente han causado mil millones de dólares de dolor y daños en los últimos cuarenta años. [27]

Durante muchos años, bajo su dirección, el departamento de Hoare en Oxford trabajó en lenguajes de especificación formal como CSP y Z. Estos no lograron la aceptación esperada por parte de la industria y en 1995 Hoare se vio obligado a reflexionar sobre los supuestos originales: [28]

Hace diez años, los investigadores de los métodos formales (y yo era el más equivocado de ellos) predijeron que el mundo de la programación acogería con gratitud toda la ayuda prometida por la formalización para resolver los problemas de fiabilidad que surgen cuando los programas se hacen grandes y más críticos en términos de seguridad. Ahora los programas se han vuelto muy grandes y muy críticos, mucho más allá de la escala que se puede abordar cómodamente con métodos formales. Ha habido muchos problemas y fracasos, pero casi siempre han sido atribuibles a un análisis inadecuado de los requisitos o a un control de gestión inadecuado. Ha resultado que el mundo simplemente no sufre significativamente del tipo de problema que nuestra investigación originalmente pretendía resolver.

Se escribió un artículo conmemorativo en homenaje a Hoare en su 90º cumpleaños. [29]

Premios y honores

Vida personal

En 1962, Hoare se casó con Jill Pym , miembro de su equipo de investigación. [45]

Libros

Referencias

  1. ^ de Tony Hoare en el Proyecto de Genealogía Matemática
  2. ^ Sampaio, Augusto (1993). Un enfoque algebraico para el diseño de compiladores. bodleian.ox.ac.uk (tesis de doctorado). Universidad de Oxford. OCLC  854973008. EThOS  uk.bl.ethos.334903.[ enlace muerto permanente ]
  3. ^ Jones, Cliff B .; Misra, Jayadev , eds. (2021). Teorías de la programación: la vida y las obras de Tony Hoare . ACM Books. Vol. 39. Nueva York, NY: Association for Computing Machinery . doi :10.1145/3477355. ISBN. 978-1-4503-8728-6. Número de identificación del sujeto  238251696.
  4. ^ "Sir Antony Hoare". Museo de Historia de la Computación. Archivado desde el original el 3 de abril de 2015. Consultado el 22 de abril de 2015 .
  5. ^ Página de perfil del autor Tony Hoare en la Biblioteca Digital ACM
  6. ^ CAR Hoare en el servidor de bibliografía DBLP
  7. ^ Publicaciones de Tony Hoare indexadas por Microsoft Academic
  8. ^ Shustek, L. (2009). "Entrevista: Una entrevista con CAR Hoare". Comunicaciones de la ACM . 52 (3): 38–41. doi :10.1145/1467247.1467261. S2CID  1868477.
  9. ^ Hoare, CAR (1974). "Monitores: un concepto de estructuración de sistemas operativos". Comunicaciones de la ACM . 17 (10): 549–557. doi : 10.1145/355620.361161 . S2CID  1005769.
  10. ^ Bowen, Jonathan (8 de septiembre de 2006). Historia oral de Sir Antony Hoare. Historia oral de Hoare (Sir Antony, CAR), CHM Número de referencia: X3698.2007 (informe). Museo de Historia de la Computación . Archivado desde el original el 3 de julio de 2013. Consultado el 18 de abril de 2014 .{{cite report}}: CS1 maint: bot: estado de URL original desconocido ( enlace )
  11. ^ Lean, Thomas (2011). "El profesor Sir Tony Hoare" (PDF) . National Life Stories: An Oral History of British Science . Reino Unido: Biblioteca Británica . Archivado (PDF) del original el 15 de septiembre de 2014. Consultado el 15 de septiembre de 2014 .
  12. ^ abcde Levens, RGC, ed. (1964). Registro del Merton College 1900-1964 . Oxford: Basil Blackwell. pág. 434.
  13. ^ ab Hoare, Tony (otoño de 2009). "Mis primeros días en Elliotts". Resurrección (48). ISSN  0958-7403 . Consultado el 27 de mayo de 2014 .
  14. ^ Roscoe, Bill ; Jones, Cliff (2010). "1 Perspicacia, inspiración y colaboración" (PDF) . Reflexiones sobre el trabajo de CAR Hoare . Springer . ISBN 978-1-84882-911-4. Archivado (PDF) del original el 9 de octubre de 2022.
  15. ^ ab Hoare, CAR (febrero de 1981). "Las viejas ropas del emperador". Comunicaciones de la ACM . 24 (2): 5–83. doi : 10.1145/358549.358561 . ISSN  0001-0782.
  16. ^ Hoare, CAR (1981). "Las viejas ropas del emperador". Comunicaciones de la ACM . 24 (2): 75–83. doi : 10.1145/358549.358561 .
  17. ^ Jeuring, Johan; Meertens, Lambert ; Guttmann, Walter (17 de agosto de 2016). «Perfil del grupo de trabajo 2.1 del IFIP». Foswiki . Consultado el 7 de octubre de 2020 .
  18. ^ Swierstra, Doaitse; Gibbons, Jeremy ; Meertens, Lambert (2 de marzo de 2011). "AlcanceEtc: IFIP21: Foswiki". Foswiki . Consultado el 7 de octubre de 2020 .
  19. ^ "Cátedra de Computación Christopher Strachey". Departamento de Ciencias de la Computación, Universidad de Oxford . 5 de noviembre de 2021. Consultado el 18 de enero de 2024 .
  20. ^ Página de inicio de Microsoft: breve biografía
  21. ^ Entrevista de historia oral con CAR Hoare en el Instituto Charles Babbage , Universidad de Minnesota, Minneapolis.
  22. ^ El artículo clásico sobre monitores – El artículo original sobre monitores
  23. ^ "Prefacio a la conferencia del premio Turing de la ACM" (PDF) . Archivado desde el original (PDF) el 19 de abril de 2012.
  24. ^ "C. Antony (Tony) R. Hoare". Archivado desde el original el 1 de julio de 2012.
  25. ^ Hoare, Tony (25 de agosto de 2009). "Null References: The Billion Dollar Mistake" (Referencias nulas: el error de mil millones de dólares). InfoQ.com.
  26. ^ "Null: El error de mil millones de dólares". hashnode.com. 3 de septiembre de 2020.
  27. ^ Hoare, Tony (2009). "Null References: The Billion Dollar Mistake" (Resumen de la presentación). QCon London. Archivado desde el original el 28 de junio de 2009.
  28. ^ Hoare, CAR (1996). "Unificación de teorías: un desafío para la ciencia de la computación". Artículos seleccionados del 11.º taller sobre especificación de tipos de datos abstractos, conjunto con el 8.º taller COMPASS sobre tendencias recientes en la especificación de tipos de datos . Springer-Verlag. págs. 49–57. ISBN 3-540-61629-2.
  29. ^ Jifeng, He ; Jones, Cliff ; Roscoe, Bill ; Stoy, Joe ; Sufrin, Bernard ; Bowen, Jonathan P. (2 de julio de 2024). Denvir, Tim (ed.). "Tony Hoare @ 90" (PDF) . FACS FACTS (artículo de revista). Grupo de especialistas en aspectos formales de la ciencia de la computación ( FACS ). págs. 5–42. ISSN  0950-1231. Archivado (PDF) desde el original el 10 de julio de 2024 . Consultado el 10 de julio de 2024 .
  30. ^ "Premio de trabajo sobre sistemas y lenguajes de programación de la ACM". Association for Computing Machinery. 1973. Consultado el 7 de julio de 2022 .
  31. ^ Hoare, CAR (1972). "Prueba de corrección de representaciones de datos". Comunicaciones de la ACM . 1 (4): 271–281. doi :10.1007/BF00289507. S2CID  34414224.
  32. ^ Hoare, Charles Anthony Richard (27 de octubre de 1980). "The Emperor's Old Clothes: The 1980 ACM Turing Award Lecture" (PDF) . Asociación para Maquinaria Computacional. Archivado desde el original (PDF) el 19 de abril de 2012.
  33. ^ Anónimo (1982). "Anthony Hoare FRS". royalsociety.org . Londres: Royal Society .
  34. ^ "Graduados honorarios de 1989 a la actualidad". bath.ac.uk . Universidad de Bath . Archivado desde el original el 17 de julio de 2010 . Consultado el 18 de febrero de 2012 .
  35. ^ "Biografía de (Charles) Antony Richard (Tony) Hoare". Archivado desde el original el 17 de julio de 2014.
  36. ^ ab «Lista de becarios». Archivado desde el original el 8 de junio de 2016 . Consultado el 17 de octubre de 2014 .
  37. ^ "Sir Antony Hoare: Becario 2006". Archivado desde el original el 3 de abril de 2015. Consultado el 8 de marzo de 2020 .«Sir Antony Hoare | Museo de Historia de la Computación». Archivado desde el original el 3 de abril de 2015. Consultado el 22 de abril de 2015 .
  38. ^ "Annual Review 2007: Principal's Review". www1.hw.ac.uk . Archivado desde el original el 5 de marzo de 2016 . Consultado el 29 de marzo de 2016 .
  39. ^ "Preisverleihung auf der Festveranstaltung" 40 Jahre Informatik in München": TU München vergibt Friedrich L. Bauer-Preis an Tony Hoare" (en alemán). Universidad Técnica de Múnich . 26 de octubre de 2007. Archivado desde el original el 10 de junio de 2016 . Consultado el 14 de mayo de 2016 .
  40. ^ "Premio al Logro en Lenguajes de Programación 2011". ACM . Consultado el 28 de agosto de 2012 .
  41. ^ "Ganadores de la Medalla John von Neumann del IEEE" (PDF) . IEEE. Archivado desde el original (PDF) el 9 de octubre de 2022 . Consultado el 26 de febrero de 2011 .
  42. ^ Krzysztof, Diks (15 de noviembre de 2012). "Profesor Hoare doktorem honoris causa Uniwersytetu Warszawskiego" (en polaco). Universidad de Varsovia . Archivado desde el original el 26 de agosto de 2014 . Consultado el 26 de noviembre de 2012 .
  43. ^ "Los informáticos Tony Hoare y Mateo Valero serán investidos hoy doctores honoris causa por la Complutense" (en español). 10 de mayo de 2013 . Consultado el 10 de mayo de 2013 .
  44. ^ Medalla Real 2023
  45. ^ Jones, Cliff ; Roscoe, AW ; Wood, Kenneth R., eds. (2010). Reflexiones sobre el trabajo de CAR Hoare . Springer Science. p. 3. Bibcode :2010rwch.book.....R.

 Este artículo incorpora texto disponible bajo la licencia CC BY 4.0.

Enlaces externos