C. A. R. Hoare
Charles Antony Richard Hoare (Colombo, Sri Lanka, 11 de enero de 1934), también conocido familiarmente como Tony Hoare, es un científico británico en computación.
Charles Antony Richard Hoare | ||
---|---|---|
Información personal | ||
Apodo | Tony | |
Otros nombres | Tony Hoare | |
Nacimiento |
11 de enero de 1934 (89 años) Sri Lanka, Colombo | |
Residencia | Cambridge | |
Nacionalidad | británico | |
Familia | ||
Padres |
Henry Samuel Malortie Hoare Marjorie Francis Villiers | |
Cónyuge | Jill Pym | |
Educación | ||
Educado en | ||
Supervisor doctoral | Leslie Fox | |
Información profesional | ||
Ocupación | informático, filósofo | |
Empleador |
| |
Estudiantes doctorales | Cliff Jones | |
Obras notables | ||
Miembro de | ||
Sitio web | www.cs.ox.ac.uk/people/tony.hoare | |
Distinciones |
Premio Turing en 1980 | |
Conocido sobre todo por la invención, en 1960 de Quicksort, que es el algoritmo de ordenamiento más ampliamente utilizado en el mundo. También se le conoce por el desarrollo de la Lógica de Hoare, y por el lenguaje formal CSP (tercer trabajo más citado en computación de acuerdo con las estadísticas de Citeseer), utilizado para especificar interacciones entre procesos concurrentes que sirve de base para la definición del lenguaje de programación Occam.
En 1956 consiguió el Título de Grado (equivalente a una carrera de cuatro años sin máster ni doctorado) en Cultura Clásica y Filosofía en la Universidad de Oxford.
Le asombraba el poder de la lógica matemática para explicar la certeza aparente de los teoremas matemáticos. Sirvió a la Marina Real Británica (1956-1958) donde estudió ruso y posteriormente se graduó en la Universidad Estatal de Moscú para estudiar Teoría de la Probabilidad y hacer traducciones de lenguaje humano a lenguaje de máquina.
Intentando facilitar la búsqueda de palabras en el diccionario descubrió el famoso algoritmo “Quicksort”. La función de este algoritmo es ordenar una lista de elementos del mismo tipo y está basado en la técnica “divide y vencerás”, de modo que convierte un problema complicado, en muchos sencillos, pero además es el más rápido conocido para hacer esta tarea. De hecho es, según las teorías de análisis de complejidad de algoritmos, el más rápido posible. Está matemáticamente demostrado que no se puede hacer un algoritmo de ordenación más rápido que Quicksort. [cita requerida]
En 1960 volvió a Inglaterra, donde trabajó como programador para Elliott Brothers, una pequeña fábrica de ordenadores. Allí dirigió a un equipo de personas que diseñaron el primer compilador comercial para el lenguaje de programación “Algol 60”.
Tras conseguir el rango de ingeniero jefe, coordinó un equipo mucho mayor para implementar un sistema operativo que resultó desastroso. Poco después entró en una empresa de hardware y arquitectura de software que tuvo que abandonar cuando esta se fusionó con su competencia.
En 1968 consiguió una oportunidad para trabajar como profesor de Ciencias de la Computación en Queen’s University, en Belfast. El objetivo de sus investigaciones era entender por qué los sistemas operativos eran mucho más complicados que los compiladores, y ver si los avances en teoría de la programación podrían ayudar a solucionar problemas de concurrencia informática.
Siempre fue consciente de que sería un período de investigación muy largo y que difícilmente conseguiría aplicaciones industriales para sus avances.
En 1977 se trasladó a la Universidad de Oxford, y se comprometió a construir un Grupo de Investigación de Programación, fundado por Christopher Strachey.
Durante más de treinta años como académico, Tony ha tenido siempre importantes contactos con la industria mediante consultas, colaboraciones de investigación, etc.
Cuando llegó a la edad de jubilación para las investigaciones de Oxford, aceptó con ganas la oportunidad de volver a la industria como investigador senior para Microsoft en Cambridge, donde sigue trabajando actualmente.
Entre sus muchos reconocimientos es doctor honoris causa por varias universidades, como la Universidad de Varsovia,[1] la Universidad de Bath[2] y la Universidad Complutense de Madrid.[3]
Disculpas y retractaciones
Hablando en una conferencia en 2009, Hoare se disculpó por haber inventado de la referencia nula:[4]
La llamo mi error de mil millones de dólares. Fue la invención de la referencia nula en 1965. En ese momento, yo 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 verificaciones realizadas automáticamente por el compilador. Pero no pude resistir la tentación de poner en una referencia nula, simplemente porque era tan fácil de implementar. Esto ha dado lugar a innumerables errores, vulnerabilidades y fallos de sistemas, lo que probablemente ha causado un billón de dólares de dolor y daños en los últimos cuarenta años.
Durante muchos años, bajo su dirección, su departamento en Oxford trabajó en lenguajes de especificación formal como CSP y Z. Estos sistemas no alcanzaron la adopción esperada por la industria, y en 1995 Hoare debió reflexionar sobre los supuestos originales:[5]
Hace diez años, los investigadores en métodos formales (y yo era el más confundido entre ellos) predijeron que el mundo de la programación adoptaría agradecido todas las ayudas prometidas por la formalización para resolver los problemas de fiabilidad que surgen cuando los programas se vuelven más grandes y su seguridad es más crítica. Los programas ahora han llegado a ser muy grandes y muy críticos - mucho más allá de la escala que puede ser cómodamente abordada por los métodos formales. Hubo muchos problemas y fracasos, pero éstos casi siempre han sido atribuibles a un análisis inadecuado de los requisitos o a un inadecuado control de gestión. Se ha comprobado que el mundo simplemente no sufre significativamente del tipo de problemas que nuestra investigación estaba originalmente destinada a resolver.
Referencias
- Diks, Krzysztof (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 10 de mayo de 2013.
- «Honorary Graduates 1989 to present». bath.ac.uk. Universidad de Bath. Archivado desde el original el 19 de diciembre de 2015. Consultado el 10 de mayo de 2013.
- «Los informáticos Tony Hoare y Mateo Valero serán investidos hoy doctores honoris causa por la Complutense». 10 de mayo de 2013. Consultado el 10 de mayo de 2013.
- Hoare, Tony (25 de agosto de 2009). «Null References: The Billion Dollar Mistake». InfoQ.com.
- Hoare, C. A. R. (1996). Springer-Verlag, ed. Unification of Theories: A Challenge for Computing Science. Selected papers from the 11th Workshop on Specification of Abstract Data Types Joint with the 8th COMPASS Workshop on Recent Trends in Data Type Specification. pp. 49-57. ISBN 3-540-61629-2.
Enlaces externos
- Wikimedia Commons alberga una categoría multimedia sobre C. A. R. Hoare.
- The 1980 ACM Turing Award Lecture - Transcripción del discurso de Hoare.
- Most cited articles in Computer Science
- Towards the Verifying Compiler Journal of the ACM (JACM), Vol 50, No 1 (2003) Págs. 63 - 69
Predecesor: Kenneth Iverson |
Premio Turing 1980 |
Sucesor: Edgar Frank Codd |