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

Alfred Vaino Aho (nacido el 9 de agosto de 1941) es un científico informático canadiense mejor conocido por su trabajo en lenguajes de programación , compiladores y algoritmos relacionados, y sus libros de texto sobre el arte y la ciencia de la programación informática. [2] [3] [4] Él y su colaborador de mucho tiempo, Jeffrey Ullman , recibieron el premio Turing 2020 , generalmente reconocido como la más alta distinción en ciencias de la computación . [5]

Carrera [ editar ]

Aho recibió un BASc. (1963) en Ingeniería Física de la Universidad de Toronto , luego un MA (1965) y Ph.D. (1967) en Ingeniería Eléctrica / Ciencias de la Computación de la Universidad de Princeton . [6] Realizó investigaciones en Bell Labs de 1967 a 1991, y nuevamente de 1997 a 2002 como vicepresidente del Centro de Investigación de Ciencias de la Computación. [7] Desde 1995, ha ocupado la cátedra Lawrence Gussman en Ciencias de la Computación en la Universidad de Columbia . Se desempeñó como presidente del departamento de 1995 a 1997, y nuevamente en la primavera de 2003. [8]

En su tesis doctoral, Aho creó gramáticas indexadas [9] y el autómata de pila anidada [10] como vehículos para extender el poder de los lenguajes libres de contexto , pero conservando muchas de sus propiedades de decisión y cierre. Una aplicación de las gramáticas indexadas es el modelado de sistemas de reescritura en paralelo, [11] particularmente en aplicaciones biológicas. [12]

Después de graduarse de Princeton, Aho se unió al Centro de Investigación de Ciencias de la Computación en Bell Labs, donde diseñó algoritmos eficientes de expresión regular y coincidencia de patrones de cadena que implementó en las primeras versiones de las herramientas Unixegrep y fgrep. El fgrepalgoritmo se conoce como el algoritmo Aho-Corasick ; es utilizado por varios sistemas de búsqueda bibliográfica, incluido el desarrollado por Margaret J. Corasick , y por otras aplicaciones de búsqueda de cadenas. [13]

En Bell Labs, Aho trabajó en estrecha colaboración con Steve Johnson y Jeffrey Ullman para desarrollar algoritmos eficientes para analizar y traducir lenguajes de programación. [14] Steve Johnson utilizó los algoritmos de análisis sintáctico LALR ascendente para crear el generador de analizador de sintaxis yacc , [15] y Michael E. Lesk y Eric Schmidt utilizaron los algoritmos de coincidencia de patrones de expresión regular de Aho para crear el generador de analizador léxico lex . [16] Las herramientas lex y yacc y sus derivados se han utilizado para desarrollar las interfaces de muchos de los compiladores de lenguajes de programación actuales. [17]

Aho y Ullman escribieron una serie de libros de texto sobre técnicas de compilación que codificaron la teoría relevante para el diseño de compiladores. Su libro de texto de 1977 Principles of Compiler Design tenía un dragón verde en la portada y se conoció como "el libro del dragón verde". En 1986, Ravi Sethi se unió a Aho y Ullman para crear una nueva edición, "el libro del dragón rojo" (que se mostró brevemente en la película de 1995 " Hackers "), y en 2007 también por Monica Lam para crear "el libro del dragón púrpura". ". Los libros de dragones se utilizan para cursos universitarios, así como para referencias de la industria. [18]

En 1974, Aho, John Hopcroft y Ullman escribieron el Diseño y análisis de algoritmos informáticos , codificando algunas de sus primeras investigaciones sobre algoritmos. Este libro se convirtió en uno de los libros más citados en ciencias de la computación durante varias décadas y ayudó a estimular la creación de algoritmos y estructuras de datos como un curso central en el plan de estudios de ciencias de la computación. [19]

Aho también es ampliamente conocido por su coautoría del lenguaje de programación AWK con Peter J. Weinberger y Brian Kernighan (la "A" significa "Aho"). [20] A partir de 2010 , los intereses de investigación de Aho incluyen lenguajes de programación, compiladores, algoritmos y computación cuántica . Forma parte del grupo de investigación Language and Compilers de la Universidad de Columbia. [21]

En general, sus trabajos han sido citados 81.040 veces y tiene un índice h de 66, al 8 de mayo de 2019. [22]

Aho ha recibido muchos premios prestigiosos, incluyendo el IEEE 's John von Neumann medalla y la pertenencia a la Academia Nacional de Ingeniería . Fue elegido miembro de la Academia Estadounidense de Artes y Ciencias en 2003. [23] Tiene doctorados honorarios de la Universidad de Waterloo , [24] de la Universidad de Helsinki , [24] y de la Universidad de Toronto . [25] Es miembro de la Asociación Estadounidense para el Avance de la Ciencia , ACM , Bell Labs e IEEE.. [19]

Aho se ha desempeñado dos veces como presidente del Comité Asesor de la Dirección de Ingeniería y Ciencias de la Información y Computación de la Fundación Nacional de Ciencias. Es ex presidente del Grupo de Interés Especial de ACM sobre Algoritmos y Teoría de Computabilidad . [26] Aho, Hopcroft y Ullman fueron co-receptores del Premio C&C 2017 otorgado por NEC Corporation. [27] Él y Ullman fueron nombrados beneficiarios del Premio Turing 2020 el 31 de marzo de 2021. [5]

Enseñanza [ editar ]

Aho ha enseñado en la Universidad de Columbia en la ciudad de Nueva York desde 1995. Ganó el premio Great Teacher Award de la Society of Columbia Graduates en 2003. [28]

Libros [ editar ]

  • AV Aho y JD Ullman , La teoría del análisis, traducción y compilación, vol. 1, análisis. Prentice Hall, 1972. ISBN  0-13-914556-7
  • AV Aho (ed.) Corrientes en la teoría de la computación. Prentice Hall, 1973. ISBN 0-13-195651-5 [29] 
  • AV Aho y JD Ullman , La teoría del análisis, traducción y compilación, vol. 2, compilando. Prentice-Hall, 1973. ISBN 978-0-13-914564-3 
  • AV Aho, JE Hopcroft , JD Ullman , El diseño y análisis de algoritmos informáticos. Addison-Wesley, 1974. ISBN 0-201-00023-7 
  • AV Aho y JD Ullman , Principios de diseño de compiladores. Addison-Wesley, 1977. ISBN 0-201-00022-9 
  • AV Aho, JE Hopcroft , JD Ullman , Estructuras de datos y algoritmos. Addison-Wesley, 1983. ISBN 0-201-00023-7 
  • AV Aho, R. Sethi , JD Ullman , Compiladores: principios, técnicas y herramientas . Addison-Wesley, Reading MA 1986. ISBN 0-201-10088-6 
  • AV Aho, BW Kernighan y PJ Weinberger , el lenguaje de programación AWK. Addison-Wesley, 1988. ISBN 978-0-201-07981-4 
  • AV Aho y JD Ullman , Fundamentos de la informática . WH Freeman / Computer Science Press, 1992. ISBN 978-0-7167-8233-9 [30] [31] 
    • AV Aho y JD Ullman , Fundamentos de la informática, Edición C. WH Freeman, 1995. ISBN 978-0-7167-8284-1 
  • AV Aho, MS Lam , R. Sethi y JD Ullman , Compiladores: principios, técnicas y herramientas , segunda edición. Addison-Wesley, 2007. ISBN 978-0-321-48681-3 

Referencias [ editar ]

  1. ^ Alfred Vaino Aho en el Proyecto de genealogía matemática
  2. ^ Aho, A .; Gottlob, G. (2014). "Un asiento de primera fila para la transformación editorial de Comunicaciones ". Comunicaciones de la ACM . 57 (4): 5. doi : 10.1145 / 2582611 . S2CID 21553189 . 
  3. ^ Aho, AV (1990). "Algoritmos para encontrar patrones en cadenas". Manual de Informática Teórica . MIT Press. págs. 255–300.
  4. ^ Entrevista Computerworld con Alfred V. Aho Archivado el 29 de mayo de 2008 en Wayback Machine.
  5. ^ a b El premio ACM Turing honra a los innovadores que dieron forma a los fundamentos de los compiladores y algoritmos de lenguajes de programación . Consultado el 31 de marzo de 2021.
  6. ^ Creación de programas confiables a partir de programadores no confiables [PDF], Excellentia
  7. ^ Fitchard, Kevin (31 de marzo de 2021). "Bell Labs 'Al Aho y Jeffrey Ullman honrados con el prestigioso premio Turing" . Nokia Bell Labs . Consultado el 3 de abril de 2021 .
  8. ^ "Perfil y logros detallados de los beneficiarios del Grupo B del Premio C&C 2017" (PDF) . La Fundación NEC C&C .
  9. ^ Aho, AV (1968). "Gramáticas indexadas --- una extensión de gramáticas libres de contexto". Revista de la ACM . 15 (4): 647–671. doi : 10.1145 / 321479.321488 . S2CID 9539666 . 
  10. ^ Aho, AV (1969). "Autómatas de pila anidada". Revista de la ACM . 16 (3): 383–406. doi : 10.1145 / 321526.321529 . S2CID 685569 . 
  11. ^ Rambow, Owen; Satta, Giorgio (28 de julio de 1999). "Paralelismo independiente en sistemas de reescritura paralelos de copia finita" . Informática Teórica . 223 (1–2): 87–120. doi : 10.1016 / S0304-3975 (97) 00190-4 . ISSN 0304-3975 . 
  12. ^ Culik, Karel; Maibaum, TSE (1974). Loeckx, Jacques (ed.). "Sistemas de reescritura en paralelo en términos" . Autómatas, lenguajes y programación . Apuntes de conferencias en informática. Berlín, Heidelberg: Springer: 495–510. doi : 10.1007 / 978-3-662-21545-6_38 . ISBN 978-3-662-21545-6.
  13. ^ Aho, Alfred V .; Corasick, Margaret J. (junio de 1975). "Coincidencia de cadenas eficiente: una ayuda para la búsqueda bibliográfica". Comunicaciones de la ACM . 18 (6): 333–340. doi : 10.1145 / 360825.360855 . S2CID 207735784 . 
  14. ^ Aho, AV; Johnson, SC; Ullman, JD (1977). "Generación de código para expresiones con subexpresiones comunes". Revista de la ACM . 24 : 146-160. doi : 10.1145 / 321992.322001 . S2CID 2614214 . 
  15. ^ Morris, Richard (1 de octubre de 2009). "Stephen Curtis Johnson: Geek de la semana" . Software Red Gate . Consultado el 19 de enero de 2018 .
  16. ^ Lesk, YO; Schmidt, E. "Lex - Un generador de analizador léxico" . Consultado el 16 de agosto de 2010 .
  17. ^ Levine, John R .; Mason, Tony; Brown, Doug (1992). lex y yacc (2 ed.). O'Reilly . págs.  1 –2. ISBN 1-56592-000-7.
  18. ^ "DYOL: diseña tu propio idioma - corpus - Dragon Books - Purple Dragon" . slebok.github.io . Consultado el 3 de abril de 2021 .
  19. ^ a b Ibaraki, Stephen . "Jeffrey Ullman y Alfred Aho, beneficiarios del premio ACM AMTuring 2020" . forbes.com . Consultado el 3 de abril de 2021 .
  20. ^ Aho, AV; Kernighan, BW; Weinberger, PJ (1979). "Awk - un lenguaje de procesamiento y escaneo de patrones". Software: práctica y experiencia . 9 (4): 267. CiteSeerX 10.1.1.80.4787 . doi : 10.1002 / spe.4380090403 . S2CID 29399630 .  
  21. ^ http://landc.cs.columbia.edu/
  22. ^ "Registro académico de Google para Alfred Aho" .
  23. ^ "Libro de miembros, 1780-2010: Capítulo A" (PDF) . Academia Estadounidense de Artes y Ciencias. Archivado (PDF) desde el original el 10 de mayo de 2011 . Consultado el 6 de abril de 2011 .
  24. ^ a b "DLS - Alfred Aho" . Escuela de Ciencias de la Computación Cheriton . 2017-02-16 . Consultado el 3 de abril de 2021 .
  25. ^ Hazlo, Liz. " ' Premio Nobel de informática:' Alfred Aho, alumno de ingeniería de la U of T, recibe el premio AM Turing" . utoronto.ca . Consultado el 3 de abril de 2021 .
  26. ^ "Breve supresión de prueba de Estados Unidos despierta ira" . The New York Times . 17 de febrero de 1987 . Consultado el 10 de noviembre de 2015 , a través de Safari.
  27. ^ "Ceremonia de premios C&C 2017" . Fundación NEC C&C . Consultado el 3 de abril de 2021 .
  28. ^ "Ver: informático Alfred Aho" . Fundación Simons . 2013-07-18 . Consultado el 3 de abril de 2021 .
  29. ^ "Corrientes en la teoría de la computación, editado por Alfred V. Aho. Autores contribuyentes: Ronald V. Libro [y otros]" . worldcat.org . Consultado el 1 de abril de 2021 .
  30. ^ "Fundamentos de la informática" . worldcat.org . Consultado el 1 de abril de 2021 .
  31. ^ "Fundamentos de la informática" . worldcat.org . Consultado el 1 de abril de 2021 .

Enlaces externos [ editar ]

  • Aho, Alfred Vaino en zbMATH
  • Alfred V Aho en la Biblioteca digital ACM