David Gries

Orcid: 0000-0002-7005-4704

Affiliations:
  • Cornell University, Ithaca, USA


According to our database1, David Gries authored at least 108 papers between 1965 and 2022.

Collaborative distances:
  • Dijkstra number2 of two.
  • Erdős number3 of three.

Awards

ACM Fellow

ACM Fellow 1994, "For co-authoring of 'An Axiomatic Proof Technique for Parallel Programs I', the best paper in the area of Programming Systems and Languages.".

Timeline

Legend:

Book 
In proceedings 
Article 
PhD thesis 
Dataset
Other 

Links

Online presence:

On csauthors.net:

Bibliography

2022
Reflections on Edsger and His Influence.
Proceedings of the Edsger Wybe Dijkstra: His Life, Work, and Legacy, 2022

Development of Correct Programs.
Proceedings of the Edsger Wybe Dijkstra: His Life, Work, and Legacy, 2022

2008
A principled approach to teaching OO first.
Proceedings of the 39th SIGCSE Technical Symposium on Computer Science Education, 2008

2006
What Have We Not Learned about Teaching Programming?
Computer, 2006

2005

2002
Where is programming methodology these days?
ACM SIGCSE Bull., 2002

In memoriam: Edsger W. Dijkstra 1930-2002.
Commun. ACM, 2002

Problems with CS education.
Proceedings of the 7th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, 2002

ProgramLive - master Java programming in a dynamic, self-paced learning environment.
Wiley, ISBN: 978-0-471-44158-8, 2002

2001
From the Editors of this special issue.
Inf. Process. Lett., 2001

How mathematical thinking enchances computer science problem solving.
Proceedings of the 32rd SIGCSE Technical Symposium on Computer Science Education, 2001

AP CS goes OO.
Proceedings of the 32rd SIGCSE Technical Symposium on Computer Science Education, 2001

2000
Recommendations for changes in advanced placement computer science (panel session).
Proceedings of the 31st SIGCSE Technical Symposium on Computer Science Education, 2000

1999
Monotonicity in Calculational Proofs.
Proceedings of the Correct System Design, 1999

1998
Adding the Everywhere Operator to Propositional Logic.
J. Log. Comput., 1998

Teaching calculational logic.
Proceedings of the Programming Concepts and Methods, 1998

1997
K-M-P String Matching Revisited.
Inf. Process. Lett., 1997

Formal Justification of Underspecification for S5.
Inf. Process. Lett., 1997

Audio formatting - Making spoken text and math comprehensible.
Int. J. Speech Technol., 1997

1996
Interactive Audio Documents.
J. Vis. Lang. Comput., 1996

An Invitation to Formal Methods.
Computer, 1996

1995
Audio Formatting - Presenting Structured Information Aurally.
Multim. Syst., 1995

Equational Propositional Logic.
Inf. Process. Lett., 1995

Equational Logic: A Great Pedagogical Tool for Teaching a Skill in Logic.
Proceedings of the ZUM '95: The Z Formal Specification Notation, 1995

Teaching as a logic tool (abstract).
Proceedings of the 26th SIGCSE Technical Symposium on Computer Science Education, 1995

Equational Logic as a Tool.
Proceedings of the Algebraic Methodology and Software Technology, 1995

Avoiding the Undefined by Underspecification.
Proceedings of the Computer Science Today: Recent Trends and Developments, 1995

1994
Teaching Logic as a Tool.
Proceedings of the Software Engineering Education, 1994

1993
A Logical Approach to Discrete Math.
Texts and Monographs in Computer Science, Springer, ISBN: 978-1-4757-3837-7, 1993

1992
Trace-Based Network Proof Systems: Expressiveness and Completeness.
ACM Trans. Program. Lang. Syst., 1992

A Constructive Proof of Vizing's Theorem.
Inf. Process. Lett., 1992

The 1990-91 Taulbee Survey Report.
Computer, 1992

The 1989-90 Taulbee Survey.
Commun. ACM, 1992

Data Refinement and the Transform.
Proceedings of the Program Design Calculi, Proceedings of the NATO Advanced Study Institute on Program Design Calculi, Marktoberdorf, Germany, July 28, 1992

Are formal methods useful for software development?
Proceedings of the Sixteenth Annual International Computer Software and Applications Conference, 1992

1991
Teaching Calculation and Discrimination: A More Effective Curriculum.
Commun. ACM, 1991

1990
The Transform - a New Language Construct.
Struct. Program., 1990

The 1988-89 Taulbee Survey Report.
Computer, 1990

Instilling Professionalism in Software Engineers.
Proceedings of the Software Engineering Education, 1990

1989
An Algorithm for Transitive Reduction of an Acyclic Graph.
Sci. Comput. Program., 1989

An Optimal Parallel Algorithm for Generating Combinations.
Inf. Process. Lett., 1989

1988 Snowbird Report: A Discipline Matures.
Computer, 1989

The 1987-88 Taulbee Survey Report.
Computer, 1989

Computing as a Discipline.
Computer, 1989

The 1987-1988 Taulbee Survey.
Commun. ACM, 1989

The Cornell Commission: On Morris and the Worm.
Commun. ACM, 1989

Position Statement on the Foundations of Software Engineering.
Proceedings of the Information Processing 89, Proceedings of the IFIP 11th World Computer Congress, San Francisco, USA, August 28, 1989

My Thoughts on Software Engineering in the Late 1960s.
Proceedings of the 11th International Conference on Software Engineering, 1989

1988
Developing a Linear Algorithm for Cubing a Cyclic Permutation.
Sci. Comput. Program., 1988

The 1986-1987 Taulbee Survey.
Computer, 1988

Generating a Random Cycle Permutation.
BIT, 1988

Computing as a discipline: preliminary report of the ACM task force on the core of computer science.
Proceedings of the 19th SIGCSE Technical Symposium on Computer Science Education, 1988

1987
McLaren's Masterpiece.
Sci. Comput. Program., 1987

Horner's Rule and the Computation of Linear Recurrences.
Inf. Process. Lett., 1987

A Note on Graham's Convex Hull Algorithm.
Inf. Process. Lett., 1987

In-situ Inversion of a Cyclic Permutation.
Inf. Process. Lett., 1987

The 1985-1986 Taulbee Survey.
Commun. ACM, 1987

Completeness and Incompleteness of Trace-Based Network Proof Systems.
Proceedings of the Conference Record of the Fourteenth Annual ACM Symposium on Principles of Programming Languages, 1987

Models for Re-Use.
Proceedings of the Foundations of Software Technology and Theoretical Computer Science, 1987

1986
A Model and Temporal Proof System for Networks of Processes.
Distributed Comput., 1986

Imbalance Between Growth and Funding in Academic Computing Science: Two Trends Colliding.
Computer, 1986

The 1984-85 Taulbee Survey.
Computer, 1986

The 1984-1985 Taulbee Survey.
Commun. ACM, 1986

1985
A new notion of encapsulation.
Proceedings of the ACM SIGPLAN 85 Symposium on Language Issues in Programming Environments, 1985

General Correctness: A Unification of Partial and Total Correctness.
Acta Informatica, 1985

A Model and Temporal Proof System for Networks of Processes.
Proceedings of the Conference Record of the Twelfth Annual ACM Symposium on Principles of Programming Languages, 1985

Behavior: A Temporal Approach to Process Modelling.
Proceedings of the Logics of Programs, 1985

1984
Fault-Tolerant Broadcasts.
Sci. Comput. Program., 1984

1982
Letter to Dr. Susan Gerhart: comments on two book reviews.
ACM SIGSOFT Softw. Eng. Notes, 1982

Finding Repeated Elements.
Sci. Comput. Program., 1982

A Note on a Standard Strategy for Developing Loop Invariants and Loops.
Sci. Comput. Program., 1982

1981
A Proof Technique for Communicating Sequential Processes.
Acta Informatica, 1981

The Science of Programming.
Texts and Monographs in Computer Science, Springer, ISBN: 978-1-4612-5983-1, 1981

1980
Assignment and Procedure Call Proof Rules.
ACM Trans. Program. Lang. Syst., 1980

Eliminating the chaff.
ACM SIGSOFT Softw. Eng. Notes, 1980

Controlled Density Sorting.
Inf. Process. Lett., 1980

Computing Fibonacci Numbers (and Similarly Defined Functions) in Log Time.
Inf. Process. Lett., 1980

Educating the Programmer: Notation, Proofs and the Development of Programs.
Proceedings of the Information Processing, Proceedings of the 8th IFIP Congress 1980, Tokyo, Japan - October 6-9, 1980 and Melbourne, Australia, 1980

1979
Is Sometimes Ever Better Than Alway?
ACM Trans. Program. Lang. Syst., 1979

The Schorr-Waite Graph Marking Algorithm.
Acta Informatica, 1979

1978
The Multiple Assignment Statement.
IEEE Trans. Software Eng., 1978

ACM SIGPLAN history of programming languages conference ALGOL 60 language summary.
ACM SIGPLAN Notices, 1978

Language Facilities for Programming User-Computer Dialogues.
IBM J. Res. Dev., 1978

A Linear Sieve Algorithm for Finding Prime Numbers.
Commun. ACM, 1978

Is Sometimes Ever Better Than Always?
Proceedings of the Program Construction, International Summer School, July 26, 1978

Basic Axiomatic Definitions.
Proceedings of the Program Construction, International Summer School, July 26, 1978

Current Ideas in Programming Methodology.
Proceedings of the Program Construction, International Summer School, July 26, 1978

Parallel Programming.
Proceedings of the GI - 8. Jahrestagung, Berlin, 1978, Proceedings, 1978

1977
Correction to "An Illustration of Current Ideas on the Derivation of Correctness Proofs and Correct Programs".
IEEE Trans. Software Eng., 1977

Some Ideas on Data Types in High-Level Languages.
Commun. ACM, 1977

An Exercise in Proving Parallel Programs Correct.
Commun. ACM, 1977

1976
An Illustration of Current Ideas on the Derivation of Correctness Proofs and Correct Programs.
IEEE Trans. Software Eng., 1976

Verifying Properties of Parallel Programs: An Axiomatic Approach.
Commun. ACM, 1976

An Axiomatic Proof Technique for Parallel Programs I.
Acta Informatica, 1976

Some Comments on Programming Language Design.
Proceedings of the Programmiersprachen, 1976

An Illustration of Current Ideas on the Derivation of Correctness Proofs and Correct Programs (Abstract).
Proceedings of the 2nd International Conference on Software Engineering, 1976

Error Recovery and Correction - An Introduction to the Literature.
Proceedings of the Compiler Construction, An Advanced Course, 2nd ed., 1976

1974
Panel discussion on structured programming.
ACM SIGCSE Bull., 1974

What should we teach in an introductory programming course?
Proceedings of the 4th SIGCSE Technical Symposium on Computer Science Education, 1974

1973
Describing an Algorithm by Hopcroft
Acta Informatica, 1973

1972
On Classes of Program Schemata.
SIAM J. Comput., 1972

Program Schemes with Pushdown Stores.
SIAM J. Comput., 1972

Programming by Induction.
Inf. Process. Lett., 1972

1971
Compiler Construction for Digital Computers
John Wiley, ISBN: 0-471-32776-X, 1971

1968
Use of transition matrices in compiling.
Commun. ACM, 1968

Translator writing systems.
Commun. ACM, 1968

1967
The ALCOR Illinois 7090/7094 post mortem dump.
Commun. ACM, 1967

1965
Some techniques used in the ALCOR ILLINOIS 7090.
Commun. ACM, 1965


  Loading...