Alfred V. Aho

kanadyjski fizyk, elektrotechnik i teoretyk informatyki

Alfred Vaino Aho (ur. 9 sierpnia 1941 w Timmins w Ontario) – kanadyjski informatyk pochodzenia fińskiego, fizyk i elektrotechnik najbardziej znany ze swoich teoretycznych prac nad językami programowania, kompilatorami, teorią automatów i algorytmiką, oraz książek poświęconych sztuce programowania komputerów[1][2][3].

Alfred Vaino Aho
Data i miejsce urodzenia

9 sierpnia 1941
Timmins, Ontario

Zawód, zajęcie

informatyk, fizyk, elektrotechnik

Narodowość

kanadyjska

Alma Mater

Uniwersytet w Toronto, Uniwersytet w Princeton

Życiorys

edytuj

W 1963 ukończył z tytułem bakałarza studia na Uniwersytecie w Toronto, następne stopnie master oraz doktorski uzyskał na Uniwersytecie Princeton w USA[4]. Po studiach od 1967 pracował w Bell Labs, gdzie wcześniej pracował także na letnich stażach.

W 1977 współtworzył język AWK[5] oraz programów systemu UNIX[6]. Wniósł do Uniksa szereg wdrożeń wyrażeń regularnych, m.in. we wspomnianym języku AWK oraz narzędziu egrep. Brał udział w opracowaniu wielu podręczników z dziedziny informatyki teoretycznej, w szczególności w zakresie: algorytmiki, teorii kompilacji, baz danych i programowania[7][8]. W swojej pracy doktorskiej stworzył gramatykę indeksową oraz automat z zagnieżdżonym stosem jako model rozszerzający moc języków bezkonekstowych.

Od 1995 wykłada na nowojorskim Uniwersytecie Columbia. Zaprzyjaźniony z Brianem Kernighanem, z którym razem studiował oraz pracował w Bell Labs[4].

Nagrody

edytuj

W 1984 został Bell Labs Fellow, dwa lata później Fellow of AAAS. W 1988 został IEEE Fellow, a w 1996 ACM Fellow. Jest członkiem amerykańskiej National Academy of Engineering (NAE).

W 2003 roku otrzymał przyznawany przez IEEE Medal Johna von Neumanna. W 2017 razem z Johnem Hopcroftem i Jeffreyem Ullmanem otrzymał C&C Prize przyznawaną przez firmę NEC. W 2020 został wraz z Ullmanem wyróżniony przyznawaną przez ACM Nagrodą Turinga za rok 2020[9].

Zobacz też

edytuj

Przypisy

edytuj
  1. Alfred V. Aho, Indexed grammars -- An extension of context free grammars, „8th Annual Symposium on Switching and Automata Theory (SWAT 1967)”, IEEE, 1967, DOI10.1109/focs.1967.16 [dostęp 2020-05-27].
  2. Alfred V. Aho, Nested Stack Automata, „Journal of the ACM (JACM)”, 16 (3), 1969, s. 383–406, DOI10.1145/321526.321529, ISSN 0004-5411 [dostęp 2020-05-27] (ang.).
  3. A.V. Aho, S.C. Johnson, J.D. Ullman, Code Generation for Expressions with Common Subexpressions, „Journal of the ACM (JACM)”, 24 (1), 1977, s. 146–160, DOI10.1145/321992.322001, ISSN 0004-5411 [dostęp 2020-05-27] (ang.).
  4. a b Brian W. Kernighan: Jak UNIX tworzył historię. Gliwice: Helion, 2021, s. 24. ISBN 978-83-283-7163-7.
  5. A w nazwie języka AWK jest inicjałem jego nazwiska.
  6. Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger, Awk — a pattern scanning and processing language, „Software: Practice and Experience”, 9 (4), 1979, s. 267–279, DOI10.1002/spe.4380090403, ISSN 0038-0644 [dostęp 2020-05-27].
  7. Alfred V. AHO, Algorithms for Finding Patterns in Strings, Elsevier, 1990, s. 255–300, DOI10.1016/b978-0-444-88071-0.50010-2, ISBN 978-0-444-88071-0 [dostęp 2020-05-27].
  8. Hrant.B. Marandjan, Handbook of Theoretical Computer Science. Volume A: Algorithms and Complexity. Volume B: Formal Models and Semantics, „Science of Computer Programming”, 24 (1), 1995, s. 97–99, DOI10.1016/0167-6423(95)90009-8, ISSN 0167-6423 [dostęp 2020-05-27].
  9. Columbia’s Aho and Stanford’s Ullman Developed Tools and Fundamental Textbooks Used by Millions of Software Programmers around the World. Association for Computing Machinery, 2021-01-05. [dostęp 2022-09-01]. (ang.).
  NODES
Association 1
mac 1
os 18
text 2