David Gries

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
David Gries
Born (1939-04-26) April 26, 1939 (age 82)
CitizenshipUnited States
EducationB.S.; Queens College (1960)
M.S.; University of Illinois at Urbana-Champaign (1963)
Dr. rer. nat.; Technical University of Munich (1966)
Known forThe Science of Programming (book)
A Logical Approach to Discrete Math (book)
AwardsAmerican Federation of Information Processing Societies' Education Award (1986)
ACM SIGCSE Award for Outstanding Contributions to Computer Science Education (1991)
Institute for Electrical Engineers Computer Society Taylor L. Booth Education Award (1994)
ACM Karl V. Karlstrom Outstanding Educator Award
Scientific career
FieldsComputer science education
InstitutionsU.S. Naval Weapons Laboratory
Stanford University
University of Georgia
Cornell University College of Engineering
Doctoral advisorsFriedrich L. Bauer
Joseph Stoer

David Gries (born 26 April 1939 in Flushing, Queens, New York) is an American computer scientist at Cornell University, United States mainly known for his books The Science of Programming (1981) and A Logical Approach to Discrete Math (1993, with Fred B. Schneider).

He was Associate Dean for Undergraduate Programs in the Cornell University College of Engineering from 2003–2011. His research interests include programming methodology and related areas such as programming languages, related semantics, and logic. His son, Paul Gries, has been a co-author of an introductory textbook to computer programming using the language Python and is a Professor, Teaching Stream in the Department of Computer Science at the University of Toronto.


Gries earned a Bachelor of Science (B.S.) from Queens College in 1960. He spent the next two years working as a programmer-mathematician for the U.S. Naval Weapons Laboratory, where he met his wife, Elaine.

He earned a Master of Science (M.S.) in mathematics from the University of Illinois at Urbana-Champaign in 1963. While at Illinois, Gries worked with Manfred Paul and Ruediger Wiehle to write a full compiler for the language ALGOL for the IBM 7090 mainframe computer. He earned his Dr. rer. nat. in 1966 from the Technical University of Munich, studying under Friedrich L. Bauer and Joseph Stoer.

He was a member of the International Federation for Information Processing (IFIP) IFIP Working Group 2.1 on Algorithmic Languages and Calculi,[1] which specified, maintains, and supports the languages ALGOL 60 and ALGOL 68.[2]

Gries was an assistant professor at Stanford University from 1966–1969 and then became an associate professor at Cornell University in Ithaca, New York. He spent the next 30 years there, including time as chairperson of the computer science department from 1982–1987. He had a Guggenheim Fellowship in 1984–1985. He spent 1999–2002 at the University of Georgia in Athens and returned to Cornell in January 2003.

He is author, co-author, or editor of seven textbooks and 75 research papers. As of 2021, he lives in Ithaca, New York.


  • Gries, D. (1971). Compiler Construction for Digital Computers (in English, Spanish, Japanese, Chinese, Italian, and Russian). New York: John Wiley and Sons. Bibcode:1971ccdc.book.....G.
  • Gries, D.; Conway, R. (1976). A Primer on Structured Programming, Using PL/I, PL/C, and PL/C7.
  • Gries, D.; Conway, R.; Zimmerman, E. C. (1976). Primer on Structured Programming using Pascal.
  • Gries, D.; Conway, R.; Wortman, D. (1977). An Introduction to Structured Programming using SP/K.
  • Gries, D.; Conway, R. (1978). An Introduction to Programming: a structured approach, Edition 3. Cambridge: Winthrop.
  • Gries, D.; Conway, R.; Fay, M.; Bass, C. (1979). Introduction to Microprocessor Programming using PL/Z.
  • Gries, D., ed. (1979). Programming Methodology: a Collection of Articles by Members of IFIP WG2.3. New York: Springer Verlag.
  • Gries, D. (1981). The Science of Programming (in English, Russian, and Japanese). New York: Springer Verlag.
  • Gries, D.; Feijen, W.H.J.; van Gasteren, A.J.M.; Misra, J., eds. (1990). Beauty is our Business. New York: Springer Verlag.
  • Gries, D.; Schneider, F. B. (1993). Instructor's Manual for "A Logical Approach to Discrete Math". Ithaca, New York.
  • Gries, D.; Schneider, F. B. (1993). A Logical Approach to Discrete Math. New York: Springer Verlag.
  • Gries, D.; De Roever, W. P., eds. (1998). Programming Concepts and Methods, PROCOMET '98 Chapman and Hall. London.
  • Gries, D.; Gries, P. (2004). Multimedia Introduction to Programming Using Java. New York: Springer Verlag.
  • Gries, D.; Gries, P.; Hall, P. (2001). The ProgramLive Companion. New York: John Wiley & Sons.
  • Gries, D.; Gries, P. (2000). ProgramLive. Ithaca, New York: DataDescription.


Gries is the only recipient of four major educator awards in computer science:

He holds two honorary doctorates:

He is among the first ten Cornell faculty awarded a Cornell Weiss Presidential Fellowship for contributions to undergraduate education.

In 1994, he was inducted as a Fellow of the Association for Computing Machinery for co-authoring "An Axiomatic Proof Technique for Parallel Programs I".[4]


  1. ^ Jeuring, Johan; Meertens, Lambert; Guttmann, Walter (2016-08-17). "Profile of IFIP Working Group 2.1". Foswiki. Retrieved 2020-09-10.
  2. ^ Swierstra, Doaitse; Gibbons, Jeremy; Meertens, Lambert (2011-03-02). "ScopeEtc: IFIP21: Foswiki". Foswiki. Retrieved 2020-09-10.
  3. ^ "Prof. David Gries: ACM Karl V. Karlstrom Outstanding Educator Award". Association for Computing Machinery. 1995. Retrieved 2020-03-31.
  4. ^ "ACM Fellows: USA, 1994". Association for Computing Machinery. 1994. Retrieved 2020-03-31.

External links[edit]