Alfred V. Aho

LAWRENCE GUSSMAN PROFESSOR OF COMPUTER SCIENCE

513 Computer Science Building
Mail Code 0401

Tel(212) 939-7067
Fax(212) 666-0140

Al Aho is well known for his many papers and books on algorithms and data structures, programming languages, compilers, and the foundations of computer science.  His book coauthors include John Hopcroft, Brian Kernighan, Monica Lam, Ravi Sethi, Jeffrey Ullman, and Peter Weinberger.

Research Interests

Programming languages, compilers, algorithms, software engineering, and quantum computing

Al Aho is the “A” in AWK, a widely used pattern-matching language; “W” is Peter Weinberger and “K is Brian Kernighan.  Al also wrote the initial versions of the string pattern-matching utilities egrep and fgrep that are a part of UNIX; fgrep was the first widely used implementation of what is now called the Aho-Corasick algorithm.

Al received a BASc in engineering physics from the University of Toronto in 1963 and a PhD in electrical engineering/computer science from Princeton University in 1967. He joined the faculty of Columbia Engineering in 1995 and became the Lawrence Gussman Professor of Computer Science in 2005. 

RESEARCH EXPERIENCE

  • Member of technical staff, department head, director, and vice-president of the Computing Sciences Research Center Bell Labs, Murray Hill, NJ (the lab that invented UNIX, C, X++), 1967-2002

PROFESSIONAL EXPERIENCE

  • Lawrence Gussman Professor of Computer Science, Columbia University, 2005–
  • Chair, Department of Computer Science, Columbia University, 1995-1997, Spring 2003
  • Professor of computer science, Columbia University, 1995-
  • Vice president, Computing Sciences Research, Bell Labs, 1997-2002
  • General manager, Information Sciences and Technologies Research, Bellcore, 1991-1995
  • Director, Computing Sciences Research Center, Bell Labs, Murray Hill, NJ, 1987-1991
  • Head, Computing Principles Research Department, Bell Labs, Murray Hill, NJ, 1980-1987
  • Member of technical staff, Computing Sciences Research Center, Bell Labs, Murray Hill, NJ, 1967-1980
  • Chair, Computer Science and Engineering Section of the National Academy of Engineering, 2011-2012
  • Chair, Advisory Board, Computer and Information Sciences and Engineering Directorate, National Science Foundation, 2008
  • Chair, ACM Special Interest Group on Automata and Computability Theory, 1977-1979

PROFESSIONAL AFFILIATIONS

  • ACM
  • IEEE
  • National Academy of Engineering
  • American Academy of Arts and Sciences
  • Royal Society of Canada

HONORS & AWARDS

  • Doctor of Science, honoris causa, University of Toronto, 2015
  • Columbia University Engineering School Alumni Distinguished Faculty Teaching Award, 2014
  • Fellow, Royal Society of Canada, Mathematical & Physical Sciences Division, 2013
  • Member, American Academy of Arts and Sciences, 2003
  • Great Teacher Award, Society of Columbia Graduates, 2003
  • IEEE John von Neumann Medal, 2003
  • Member, National Academy of Engineering, 1999
  • Fellow, ACM, 1996
  • Doctor of Mathematics, honoris causa, University of Waterloo, 1992
  • Fellow, IEEE, 1988
  • Doctor of Philosophy, honoris causa, University of Helsinki, 1986
  • Fellow, American Association for the Advancement of Science, 1986
  • Fellow, Bell Laboratories, 1984

BOOKS

  • E. K. Blum and A. V. Aho (eds.), Computer Science: The Hardware, Software, and Heart of It. Springer, 2012.
  • A. V. Aho, M. Lam, R. Sethi, and J. D. Ullman, Compilers: Principles, Techniques, and Tools (Second Edition). Boston, Massachusetts: Addison-Wesley, 2007 (third printing 2010).
  • A. V. Aho and J. D. Ullman, Foundations of Computer Science with C. New York: W. H. Freeman/Computer Science Press, 1995.
  • A. V. Aho and J. D. Ullman, Foundations of Computer Science. New York: W. H. Freeman/Computer Science Press, 1992.
  • A. V. Aho, B. W. Kernighan, and P. J. Weinberger, The AWK Programming Language. Reading, Massachusetts: Addison-Wesley, 1988. 
  • A. V. Aho, R. Sethi, and J. D. Ullman, Compilers: Principles, Techniques, and Tools. Reading, Massachusetts: Addison-Wesley, 1986.
  • A. V. Aho, J. E. Hopcroft, and J. D. Ullman, Data Structures and Algorithms. Reading, Massachusetts: Addison-Wesley, 1983. 
  • A. V. Aho, M. Lam, R. Sethi, and J. D. Ullman, Compilers: Principles, Techniques, and Tools (Second Edition). Boston, Massachusetts: Addison-Wesley, 2007. (third printing 2010)
  • A. V. Aho, R. Sethi, and J. D. Ullman, Compilers: Principles, Techniques, and Tools. Reading, Massachusetts: Addison-Wesley, 1986.
  • A. V. Aho, J. E. Hopcroft, and J. D. Ullman, Data Structures and Algorithms. Reading, Massachusetts: Addison-Wesley, 1983.
  • A. V. Aho and J. D. Ullman, Principles of Compiler Design. Reading, Massachusetts: Addison-Wesley, 1977. 
  • A. V. Aho, J. E. Hopcroft, and J. D. Ullman, The Design and Analysis of Computer Algorithms. Reading, Massachusetts: Addison-Wesley, 1974. 
  • A. V. Aho and J. D. Ullman, The Theory of Parsing, Translation, and Compiling, Volume 2:  Compiling.  Englewood Cliffs, N.J.: Prentice-Hall, 1973. 
  • A. V. Aho (ed.), Currents in the Theory of Computing.  Englewood Cliffs, N.J.: Prentice-Hall, 1973.  
  • A. V. Aho and J. D. Ullman, The Theory of Parsing, Translation, and Compiling, Volume 1:  Parsing.  Englewood Cliffs, N.J.: Prentice-Hall, 1972

SELECTED PUBLICATIONS

  • A. V. Aho, “Computation and Computational Thinking,” The Computer Journal 55(7), 2012, pp. 832-835.
  • M. Eaddy, T. Zimmermann, K. D. Sherwood, V. Garg, G. C. Murphy, N. Nagappan, and A. V. Aho, “Do Crosscutting Concerns Cause Defects,”  IEEE Transactions on Software Engineering 34(4), July/Aug. 2008, pp. 497-515. 
  • K. M. Svore, A. V. Aho, A. W. Cross, I. L. Chuang, and I. L. Markov, “A Layered Software Architecture for Quantum Computing Design Tools,” IEEE Computer 39(1), 2006, pp.74-83.
  • A. V. Aho, “Software and the Future of Programming Languages,” Science, Vol. 303, No. 5662, February 27, 2004, pp. 1331-1333. 
  • A. V. Aho and M. J. Corasick, “Efficient String Matching: an Aid to Bibliographic Search,” Comm. ACM 18(6), 1975, pp. 333-340.