David Gries

According to our database1, David Gries
  • authored at least 116 papers between 1965 and 2008.
  • has a "Dijkstra number"2 of two.

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 
Other 

Links

Homepages:

On csauthors.net:

Bibliography

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?
IEEE Computer, 2006

What Have We Not Learned about Teaching Programming?
Proceedings of the 30th Annual IEEE / NASA Software Engineering Workshop (SEW-30 2006), 2006

2005
Supporting workflow in a course management system.
Proceedings of the 36th SIGCSE Technical Symposium on Computer Science Education, 2005

2002
Where is programming methodology these days?
SIGCSE Bulletin, 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.
I. J. Speech Technology, 1997

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

An Invitation to Formal Methods.
IEEE Computer, 1996

Data refinement and the transform.
Proceedings of the NATO Advanced Study Institute on Deductive Program Design, 1996

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

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

Audio formatting - Making spoken text and math comprehensible.
I. J. Speech Technology, 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

Interactive audio documents.
Proceedings of the ACM Conference on Assistive Technologies, 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.
IEEE 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.
Structured Programming, 1990

The 1988-89 Taulbee Survey Report.
IEEE Computer, 1990

The 1988-89 Taulbee Survey Report.
Commun. ACM, 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.
IEEE Computer, 1989

The 1987-88 Taulbee Survey Report.
IEEE Computer, 1989

Computing as a Discipline.
IEEE Computer, 1989

The 1988 Snowbird Report: A Discipline Matures.
Commun. ACM, 1989

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

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

Computing as a Discipline.
Commun. ACM, 1989

Position Statement on the Foundations of Software Engineering.
IFIP Congress, 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.
IEEE Computer, 1988

The 1986-1987 Taulbee Survey.
Commun. ACM, 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 19st 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 Computing, 1986

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

The 1984-85 Taulbee Survey.
IEEE Computer, 1986

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

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

1985
A new notion of encapsulation.
SIGPLAN Notices, 1985

General Correctness: A Unification of Partial and Total Correctness.
Acta Inf., 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
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 Inf., 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

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.
IFIP Congress, 1980

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

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

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

Language Facilities for Programming User-Computer Dialogues.
IBM Journal of Research and Development, 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

The Multiple Assignment Statement.
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

Eliminating the Chaff.
Proceedings of the Program Construction, International Summer School, July 26, 1978

The Schorr-Waite Graph Marking Algorithm.
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 Inf., 1976

Some Ideas on Data Types in High Level Languages.
Proceedings of the SIGPLAN '76 Conference on Data: Abstraction, 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

1975
An exercise in proving parallel programs correct.
Proceedings of the Language Hierarchies and Interfaces, International Summer School, Marktoberdorf, Germany, July 23, 1975

1973
Describing an Algorithm by Hopcroft
Acta Inf., 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
On Classes of Program Schemata
Proceedings of the 12th Annual Symposium on Switching and Automata Theory, 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...