Alfred Aho: Difference between revisions
m Bot: Migrating 18 interwiki links, now provided by Wikidata on d:q62898 (Report Errors) |
→Career: perhaps, but unsourced |
||
Line 35: | Line 35: | ||
At Bell Labs Aho worked closely with [[Stephen C. Johnson|Steve Johnson]] and [[Jeffrey Ullman]] to develop efficient algorithms for analyzing and translating programming languages. Steve Johnson used the bottom-up LALR parsing algorithms to create the syntax-analyzer generator [[yacc]], and [[Michael E. Lesk]] and [[Eric Schmidt]] used Aho's regular-expression pattern-matching algorithms to create the lexical-analyzer generator [[lex (software)|lex]]. The lex and yacc tools and their derivatives have been used to develop the front ends of many of today's programming language compilers. |
At Bell Labs Aho worked closely with [[Stephen C. Johnson|Steve Johnson]] and [[Jeffrey Ullman]] to develop efficient algorithms for analyzing and translating programming languages. Steve Johnson used the bottom-up LALR parsing algorithms to create the syntax-analyzer generator [[yacc]], and [[Michael E. Lesk]] and [[Eric Schmidt]] used Aho's regular-expression pattern-matching algorithms to create the lexical-analyzer generator [[lex (software)|lex]]. The lex and yacc tools and their derivatives have been used to develop the front ends of many of today's programming language compilers. |
||
Aho and Ullman wrote a series of textbooks on compiling techniques that codified the theory relevant to compiler design. Their 1977 textbook [[Principles of Compiler Design]] had a green dragon on the front cover and became known as "the [[green dragon book]] |
Aho and Ullman wrote a series of textbooks on compiling techniques that codified the theory relevant to compiler design. Their 1977 textbook ''[[Principles of Compiler Design]]'' had a green dragon on the front cover and became known as "the [[green dragon book]]". In 1986 Aho and Ullman were joined by [[Ravi Sethi]] to create a new edition, "the red dragon book" (which was briefly shown in the 1995 movie "Hackers"), and in 2007 also by Monica Lam to create "the purple dragon book". The dragon books have been the most widely used compiler textbooks throughout the world.{{Citation needed|date=February 2013}} |
||
In 1974, Aho, [[John Hopcroft]], and Ullman wrote the |
In 1974, Aho, [[John Hopcroft]], and Ullman wrote the ''Design and Analysis of Computer Algorithms'', codifying some of their early research on algorithms. This book became one of the most highly cited books in computer science for several decades and helped to stimulate the creation of algorithms and data structures as a central course in the computer science curriculum. |
||
Aho is also widely known for his co-authorship of the [[AWK programming language]] with [[Peter J. Weinberger]] and [[Brian Kernighan]] (the 'A' stands for "Aho"). |
Aho is also widely known for his co-authorship of the [[AWK programming language]] with [[Peter J. Weinberger]] and [[Brian Kernighan]] (the 'A' stands for "Aho"). |
Revision as of 23:02, 25 February 2013
This article includes a list of general references, but it lacks sufficient corresponding inline citations. (April 2011) |
Alfred Vaino Aho | |
---|---|
Born | |
Nationality | Canadian-American |
Alma mater | University of Toronto, Princeton University |
Awards | Fellow, Bell Laboratories (1984), Fellow, American Association for the Advancement of Science (1986),
|
Scientific career | |
Fields | Computer Science |
Institutions | Columbia University |
Alfred Vaino Aho (born August 9, 1941) is a Canadian computer scientist.
Career
Aho received a B.A.Sc. in Engineering Physics from the University of Toronto and a Ph.D. in Electrical Engineering/Computer Science from Princeton University. He conducted research at Bell Labs from 1967 to 1991, and again from 1997 to 2002 as Vice President of the Computing Sciences Research Center. As of 2011[update] he holds the Lawrence Gussman Chair of Computer Science at Columbia University. He served as chair of the department from 1995 to 1997, and again in the spring of 2003.
In his PhD thesis Aho created indexed grammars and the nested-stack automaton as vehicles for extending the power of context-free languages but retaining many of their decidability and closure properties. Indexed grammars have been used[by whom?] to model parallel rewriting systems, particularly in biological applications.
After graduating from Princeton, Aho joined the Computing Sciences Research Center at Bell Labs where he devised efficient regular expression and string-pattern matching algorithms which he implemented in the first versions of the Unix tools egrep
and fgrep
. The fgrep
algorithm has become known as the Aho-Corasick algorithm; several bibliographic search-systems utilize it, including the one developed by Margaret J. Corasick, and other string-searching applications.
At Bell Labs Aho worked closely with Steve Johnson and Jeffrey Ullman to develop efficient algorithms for analyzing and translating programming languages. Steve Johnson used the bottom-up LALR parsing algorithms to create the syntax-analyzer generator yacc, and Michael E. Lesk and Eric Schmidt used Aho's regular-expression pattern-matching algorithms to create the lexical-analyzer generator lex. The lex and yacc tools and their derivatives have been used to develop the front ends of many of today's programming language compilers.
Aho and Ullman wrote a series of textbooks on compiling techniques that codified the theory relevant to compiler design. Their 1977 textbook Principles of Compiler Design had a green dragon on the front cover and became known as "the green dragon book". In 1986 Aho and Ullman were joined by Ravi Sethi to create a new edition, "the red dragon book" (which was briefly shown in the 1995 movie "Hackers"), and in 2007 also by Monica Lam to create "the purple dragon book". The dragon books have been the most widely used compiler textbooks throughout the world.[citation needed]
In 1974, Aho, John Hopcroft, and Ullman wrote the Design and Analysis of Computer Algorithms, codifying some of their early research on algorithms. This book became one of the most highly cited books in computer science for several decades and helped to stimulate the creation of algorithms and data structures as a central course in the computer science curriculum.
Aho is also widely known for his co-authorship of the AWK programming language with Peter J. Weinberger and Brian Kernighan (the 'A' stands for "Aho").
As of 2010[update] Aho's research interests include programming languages, compilers, algorithms, and quantum computing. He is part of the Language and Compilers research-group at Columbia University.[1]
Aho has received many prestigious honors, including the IEEE's John von Neumann Medal and membership in the National Academy of Engineering. He was elected a Fellow of the American Academy of Arts and Sciences in 2003.[2] He holds honorary doctorates from the University of Waterloo in Ontario and from the University of Helsinki in Finland, and is a Fellow of the American Association for the Advancement of Science, ACM, Bell Labs, and IEEE. He won the Great Teacher Award from the Society of Columbia Graduates in 2003.
Aho has twice served as chair of the Advisory Committee for the Computer and Information Science and Engineering Directorate of the National Science Foundation. He is a past president of the ACM Special Interest Group on Algorithms and Computability Theory.
Teaching
Professor Alfred Aho has taught at Columbia University in New York since 1995. He won the Great Teacher Award from the Society of Columbia Graduates in 2003.
See also
Books
- A. V. Aho and J. D. Ullman, The Theory of Parsing, Translation, and Compiling, Vol. 1, Parsing. Prentice Hall, 1972. ISBN 0-13-914556-7
- A. V. Aho (ed.) Currents in the Theory of Computing. Prentice Hall, 1973.
- A. V. Aho and J. D. Ullman, The Theory of Parsing, Translation, and Compiling, Vol. 2, Compiling. Prentice-Hall, 1973. ISBN 978-0-13-914564-3
- A. V. Aho, J. E. Hopcroft, J. D. Ullman, The Design and Analysis of Computer Algorithms. Addison-Wesley, 1974. ISBN 0-201-00023-7
- A. V. Aho and J. D. Ullman, Principles of Compiler Design. Addison-Wesley, 1977. ISBN 0-201-00022-9
- A. V. Aho, J. E. Hopcroft, J. D. Ullman, Data Structures and Algorithms. Addison-Wesley, 1983. ISBN 0-201-00023-7
- A. V. Aho, R. Sethi, J. D. Ullman, Compilers: Principles, Techniques, and Tools. Addison-Wesley, Reading MA 1986. ISBN 0-201-10088-6
- A. V. Aho, B. W. Kernighan, and P. J. Weinberger, The AWK Programming Language. Addison-Wesley, 1988. ISBN 978-0-201-07981-4
- A. V. Aho and J. D. Ullman, Foundations of Computer Science. W. H. Freeman/Computer Science Press, 1992.
- A. V. Aho and J. D. Ullman, Foundations of Computer Science, C Edition. W. H. Freeman, 1995. ISBN 978-0-7167-8284-1
- A. V. Aho, M. S. Lam, R. Sethi, and J. D. Ullman, Compilers: Principles, Techniques, and Tools, Second Edition. Addison-Wesley, 2007. ISBN 978-0-321-48681-3
References
- ^ http://landc.cs.columbia.edu/
- ^ "Book of Members, 1780-2010: Chapter A" (PDF). American Academy of Arts and Sciences. Archived from the original (PDF) on 10 May 2011. Retrieved 6 April 2011.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help)
- Aho, A.V. (October 1968). "Indexed Grammars — An Extension of Context-Free Grammars". J. ACM. 15 (4): 647–671. doi:10.1145/321479.321488.
{{cite journal}}
: Unknown parameter|authormask=
ignored (|author-mask=
suggested) (help) - Aho, A.V. (July 1969). "Nested Stack Automata". J. ACM. 16 (3): 383–406. doi:10.1145/321526.321529.
{{cite journal}}
: Unknown parameter|authormask=
ignored (|author-mask=
suggested) (help) - Aho, A.V.; Corasick, M.J. (June 1975). "Efficient String Matching: an Aid to Bibliographic Search". Comm. ACM. 18 (6): 333–340. doi:10.1145/360825.360855.
{{cite journal}}
: Unknown parameter|authormask=
ignored (|author-mask=
suggested) (help) - Aho, A.V.; Johnson, S.C.; Ullman, J.D. (January 1977). "Code Generation for Expressions with Common Subexpressions". J. ACM. 24 (1): 146–160. doi:10.1145/321992.322001.
{{cite journal}}
: Unknown parameter|authormask=
ignored (|author-mask=
suggested) (help) - Aho, A.V.; Kernighan, B.W.; Weinberger, P.J. (April 1979). "AWK — A Pattern Scanning and Processing Language". Software – Practice and Experience. 9 (4): 267–280. doi:10.1002/spe.4380090403.
{{cite journal}}
: Unknown parameter|authormask=
ignored (|author-mask=
suggested) (help) - Aho, A.V. (1990). "Algorithms for Finding Patterns in Strings". Handbook of Theoretical Computer Science. MIT Press. pp. 255–300.
{{cite book}}
: Unknown parameter|authormask=
ignored (|author-mask=
suggested) (help)
External links
- All articles with faulty authority control information
- 1941 births
- Canadian computer scientists
- Columbia University faculty
- Fellows of the Association for Computing Machinery
- Fellow Members of the IEEE
- American people of Finnish descent
- Living people
- Princeton University alumni
- Programming language designers
- Scientists at Bell Labs
- Theoretical computer scientists
- University of Toronto alumni
- People from Timmins
- Fellows of the American Academy of Arts and Sciences
- Members of the United States National Academy of Engineering