David Gries
   HOME

TheInfoList



OR:

David Gries (born April 26, 1939 in Flushing, Queens, New York) is an American computer scientist at
Cornell University Cornell University is a private statutory land-grant research university based in Ithaca, New York. It is a member of the Ivy League. Founded in 1865 by Ezra Cornell and Andrew Dickson White, Cornell was founded with the intention to tea ...
,
United States The United States of America (U.S.A. or USA), commonly known as the United States (U.S. or US) or America, is a country primarily located in North America. It consists of 50 states, a federal district, five major unincorporated territori ...
mainly known for his books ''The Science of Programming'' (1981) and ''A Logical Approach to Discrete Math'' (1993, with
Fred B. Schneider Fred Barry Schneider (born December 7, 1953) is an American computer scientist, based at Cornell University, where he is the Samuel B. Eckert Professor of Computer Science. He has published in numerous areas including science policy, cybersecuri ...
). He was Associate Dean for Undergraduate Programs in the
Cornell University College of Engineering The College of Engineering is a division of Cornell University that was founded in 1870 as the Sibley College of Mechanical Engineering and Mechanic Arts. It is one of four private undergraduate colleges at Cornell that are not statutory college ...
from 2003–2011. His research interests include programming methodology and related areas such as
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s, related
semantics Semantics (from grc, σημαντικός ''sēmantikós'', "significant") is the study of reference, meaning, or truth. The term can be used to refer to subfields of several distinct disciplines, including philosophy, linguistics and comp ...
, and
logic Logic is the study of correct reasoning. It includes both formal and informal logic. Formal logic is the science of deductively valid inferences or of logical truths. It is a formal science investigating how conclusions follow from premise ...
. His son, Paul Gries, has been a co-author of an introductory textbook to computer programming using the language
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
and is a professor teaching Stream in the Department of Computer Science at the
University of Toronto The University of Toronto (UToronto or U of T) is a public university, public research university in Toronto, Ontario, Canada, located on the grounds that surround Queen's Park (Toronto), Queen's Park. It was founded by royal charter in 1827 ...
.


Life

Gries earned a
Bachelor of Science A Bachelor of Science (BS, BSc, SB, or ScB; from the Latin ') is a bachelor's degree awarded for programs that generally last three to five years. The first university to admit a student to the degree of Bachelor of Science was the University o ...
(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 A Master of Science ( la, Magisterii Scientiae; abbreviated MS, M.S., MSc, M.Sc., SM, S.M., ScM or Sc.M.) is a master's degree in the field of science awarded by universities in many countries or a person holding such a degree. In contrast t ...
(M.S.) in mathematics from the
University of Illinois at Urbana-Champaign The University of Illinois Urbana-Champaign (U of I, Illinois, University of Illinois, or UIUC) is a public land-grant research university in Illinois in the twin cities of Champaign and Urbana. It is the flagship institution of the Univ ...
in 1963. While at Illinois, Gries worked with Manfred Paul and Ruediger Wiehle to write a full
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs tha ...
for the language ALGOL 60 for the
IBM 7090 The IBM 7090 is a second-generation transistorized version of the earlier IBM 709 vacuum tube mainframe computer that was designed for "large-scale scientific and technological applications". The 7090 is the fourth member of the IBM 700/7000 se ...
mainframe computer. He earned his '' Dr. rer. nat.'' in 1966 from the TH München, studying under
Friedrich L. Bauer Friedrich Ludwig "Fritz" Bauer (10 June 1924 – 26 March 2015) was a German pioneer of computer science and professor at the Technical University of Munich. Life Bauer earned his Abitur in 1942 and served in the Wehrmacht during World War ...
and
Josef Stoer Josef Stoer (born 21 June 1934) is a German mathematician specializing in numerical analysis and professor emeritus of the Institut für Mathematik of Universität Würzburg. He was born in Meschede, and earned his Ph.D. in 1961 at Johannes Gute ...
. Gries is member emeritus of
IFIP Working Group 2.3 IFIP Working Group 2.3 on Programming Methodology is a working group of the International Federation for Information Processing (IFIP). Its main aim is to increase programmers’ ability to compose programs. To this end, WG2.3 provides an internatio ...
, whose aim is to increase programmers' ability to compose programs, and he edited ''Programming Methodology: a Collection of Articles by Members of IFIP WG2.3'', which highlights the work of this group in its first ten years. Gries was an
assistant professor Assistant Professor is an academic rank just below the rank of an associate professor used in universities or colleges, mainly in the United States and Canada. Overview This position is generally taken after earning a doctoral degree A docto ...
at Stanford University from 1966–1969 and then became an associate professor at
Cornell University Cornell University is a private statutory land-grant research university based in Ithaca, New York. It is a member of the Ivy League. Founded in 1865 by Ezra Cornell and Andrew Dickson White, Cornell was founded with the intention to tea ...
in
Ithaca, New York Ithaca is a city in the Finger Lakes region of New York, United States. Situated on the southern shore of Cayuga Lake, Ithaca is the seat of Tompkins County and the largest community in the Ithaca metropolitan statistical area. It is named ...
. He spent the next 30 years there, including time as chair of the computer science department from 1982–1987. By the late 1970s, a survey had Cornell as the fourth-ranked computer science program in the nation, with nationally visible faculty such as
Juris Hartmanis Juris Hartmanis (July 5, 1928 – July 29, 2022) was a Latvian-born American computer scientist and computational theorist who, with Richard E. Stearns, received the 1993 ACM Turing Award "in recognition of their seminal paper which establis ...
,
Gerard Salton Gerard A. "Gerry" Salton (8 March 1927 in Nuremberg – 28 August 1995) was a Professor of Computer Science at Cornell University. Salton was perhaps the leading computer scientist working in the field of information retrieval during his time, an ...
, Robert L. Constable, Richard W. Conway, and Gries. Many of them, like Gries, were especially known for their work in theory-related areas. Gries was an advocate of treating
formal methods In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the exp ...
in programming as a core computer science topic and teaching it to undergraduates, a stance that found large amounts of debate within the computer science education community. In any case, Gries' reputation as a teacher was such that around 700 students and fellow faculty members were in attendance for his final lecture, given to his "Programming and Data Structures" class, in May 2022. Cornell's computer science program maintained its prominence, placing sixth overall and third in theory in U.S. News & World Report Best Colleges Rankings for 2022. Gries had a Guggenheim Fellowship in 1984–1985. He spent 1999–2002 at the
University of Georgia , mottoeng = "To teach, to serve, and to inquire into the nature of things.""To serve" was later added to the motto without changing the seal; the Latin motto directly translates as "To teach and to inquire into the nature of things." , establ ...
in
Athens Athens ( ; el, Αθήνα, Athína ; grc, Ἀθῆναι, Athênai (pl.) ) is both the capital and largest city of Greece. With a population close to four million, it is also the seventh largest city in the European Union. Athens dominates ...
and returned to Cornell in January 2003. He is author, co-author, or editor of seven textbooks and 75 research papers. , he lives in
Ithaca, New York Ithaca is a city in the Finger Lakes region of New York, United States. Situated on the southern shore of Cayuga Lake, Ithaca is the seat of Tompkins County and the largest community in the Ithaca metropolitan statistical area. It is named ...
.


Textbooks

Gries' 1971 work ''Compiler Construction for Digital Computers'' was the first textbook to be published on designing and implementing
language compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
s. It was also one of the first textbooks to be written and produced using computers, in this case
punched card A punched card (also punch card or punched-card) is a piece of stiff paper that holds digital data represented by the presence or absence of holes in predefined positions. Punched cards were once common in data processing applications or to di ...
s input to a text-formatting program that ran on an
IBM System/360 Model 65 The IBM System/360 Model 65 is a member of the IBM System/360 family of computers. It was announced April 1965, and replaced two models, the Model 60 and Model 62, announced one year prior but never shipped. It was discontinued in March 1974. Mo ...
; the early technology used eventually resulted in the book having a somewhat dated appearance. ''Compiler Construction for Digital Computers'' sold well and went through more than twenty printings, although over time it would be eclipsed in renown by "the Dragon Book", Alfred V. Aho and Jeffrey D. Ullman's 1977 volume ''
Principles of Compiler Design ''Principles of Compiler Design'', by Alfred Aho and Jeffrey Ullman, is a classic textbook on compilers for computer programming languages. Both of the authors won the 2020 Turing award for their work on compilers. It is often called the "green ...
''. Nonetheless, Dutch computer scientist Dick Grune has written of ''Compiler Construction for Digital Computers'' that "entire generations of compiler constructors have grown up with it and they have not regretted it." The textbook ''An Introduction to Programming: A Structured Approach Using PL/I and PL/C'' was co-written with his computer scientist college Richard W. Conway and published in 1973. It used the
PL/C PL/C is an instructional dialect of the programming language PL/I, developed at the Department of Computer Science of Cornell University in the early 1970s in an effort headed by Professor Richard W. Conway and graduate student Thomas R. Wilcox ...
dialect developed at Cornell and went through several editions and adaptations. It stressed the discipline of structured programming throughout, becoming one of the most prominent textbooks to do so, and introduced considerations of
program correctness In theoretical computer science, an algorithm is correct with respect to a specification if it behaves as specified. Best explored is ''functional'' correctness, which refers to the input-output behavior of the algorithm (i.e., for each input it p ...
, becoming the first introductory textbook to do so. In 1981, Gries published ''The Science of Programming'', a textbook that covers
program verification In the context of hardware and software systems, formal verification is the act of proving or disproving the correctness of intended algorithms underlying a system with respect to a certain formal specification or property, using formal metho ...
. It presents
propositional calculus Propositional calculus is a branch of logic. It is also called propositional logic, statement logic, sentential calculus, sentential logic, or sometimes zeroth-order logic. It deals with propositions (which can be true or false) and relations ...
and uses it to formalize the treatment of
precondition In computer programming, a precondition is a condition or predicate that must always be true just prior to the execution of some section of code or before an operation in a formal specification. If a precondition is violated, the effect of the s ...
s,
postcondition In computer programming, a postcondition is a condition or predicate that must always be true just after the execution of some section of code or after an operation in a formal specification. Postconditions are sometimes tested using assertions wit ...
s, invariants, and related entities, and then provides practical stratagems for program development via identifying those logical entities from a problem specification. A review in '' SIGSOFT Software Engineering Notes'' found the book to be valuable in the logic and stratagem aspects, but too focused on low-level programming with no
abstract data types In computer science, an abstract data type (ADT) is a mathematical model for data types. An abstract data type is defined by its behavior (semantics) from the point of view of a '' user'', of the data, specifically in terms of possible values, ...
discussed other than the simple
array An array is a systematic arrangement of similar objects, usually in rows and columns. Things called an array include: {{TOC right Music * In twelve-tone and serial composition, the presentation of simultaneous twelve-tone sets such that the ...
. Writing in ''
Communications of the ACM ''Communications of the ACM'' is the monthly journal of the Association for Computing Machinery (ACM). It was established in 1958, with Saul Rosen as its first managing editor. It is sent to all ACM members. Articles are intended for readers with ...
'', computer scientist Jon Bentley said ''The Science of Programming'' was "an excellent introduction to the field" and said that professional programmers could benefit from studying it and using program verification techniques in their own projects. ''A Logical Approach to Discrete Math'' was co-authored with
Fred B. Schneider Fred Barry Schneider (born December 7, 1953) is an American computer scientist, based at Cornell University, where he is the Samuel B. Eckert Professor of Computer Science. He has published in numerous areas including science policy, cybersecuri ...
and published in 1993. A paper from a faculty member at
Southwestern University Southwestern University (Southwestern or SU) is a private liberal arts college in Georgetown, Texas. Formed in 1873 from a revival of collegiate charters granted in 1840, Southwestern is the oldest college or university in Texas. Southwestern o ...
advocating teaching the subjects the book covered to first-year undergraduates and called it "an ideal text covering predicate calculus for use in programming." Similarly, a faculty member at
Pepperdine University Pepperdine University () is a private research university affiliated with the Churches of Christ with its main campus in Los Angeles County, California. Pepperdine's main campus consists of 830 acres (340 ha) overlooking the Pacific Ocean and th ...
stated that, "My experience with ''A Logical Approach to Discrete Math'' convinced me that formal methods are easily mastered at the undergraduate level."


Selected works

* * * * *Gries, D., ed. (1979) ''Programming Methodology: a Collection of Articles by Members of IFIP WG2.3'' * * * * * *


Awards

*Lifetime Achievement Award for Teaching from Cornell Bowers CIS – inaugural recipient (2022) *Tau Beta Pi Professor of the Year (2022) *Oldest paper in the ACM SIGCSE Technical Symposium Top Ten Papers of All Time (2019) * Amity Booker Prize, with Paul Gries (2016) *Honorary Doctor of Science,
Miami University Miami University (informally Miami of Ohio or simply Miami) is a public research university in Oxford, Ohio. The university was founded in 1809, making it the second-oldest university in Ohio (behind Ohio University, founded in 1804) and the ...
, Oxford, Ohio (1999) *Honorary Doctor of Laws, Daniel Webster College, Nashua, New Hampshire (1996) * (1995) *Weiss Presidential Fellow –among the first ten Fellows (1995) * Advisor of T.V. Raman, whose Ph.D. thesis won the annual (1995) *
IEEE-CS The Institute of Electrical and Electronics Engineers (IEEE) is a 501(c)(3) professional association for electronic engineering and electrical engineering (and associated disciplines) with its corporate office in New York City and its operation ...
(1994) *Charter Fellow, ACM (1994) * CRA Distinguished Service Award (1991) *Fellow, AAAS (1990) * ACM SIGCSE Award for Outstanding Contribution to CS Education (1991) *
AFIPS The American Federation of Information Processing Societies (AFIPS) was an umbrella organization of professional societies established on May 10, 1961, and dissolved in 1990. Its mission was to advance knowledge in the field of information science, ...
Education Award (1986) * Guggenheim Fellowship (1983) *ACM Programming Systems and Languages Paper Award, with
Susan Owicki Susan Owicki is a computer scientist, Association for Computing Machinery (ACM) Fellow, and one of the founding members of the Systers mailing list for women in computing. She changed careers in the early 2000s and became a licensed marriage ...
, for the "Verifying properties of parallel programs: an axiomatic approach" paper (1977) * Superior Accomplishment Award, U.S. Naval Weapons Lab, Dahlgren, Va. (1961)


See also

*
List of important publications in theoretical computer science This is a list of important publications in theoretical computer science, organized by field. Some reasons why a particular publication might be regarded as important: *Topic creator – A publication that created a new topic *Breakthrough †...


References


External links

*
Cornell University Science News: Computer association names Cornell's Gries an outstanding educator
*
Books by David Gries (listed on Amazon)

"A Conversation with David Gries", interview by Robert L. Constable, 2015
{{DEFAULTSORT:Gries, David 1939 births Living people Programming language researchers American computer scientists Technical University of Munich alumni Cornell University faculty University of Georgia faculty Fellows of the Association for Computing Machinery Computer science educators Formal methods people American textbook writers American male non-fiction writers Computer science writers 20th-century American mathematicians 21st-century American mathematicians