Programming languages for non-numeric processing - 2: An introduction to the COGENT programming system. - John C. Reynolds (ACM National Conference, 1965)

Automatic computation of data set definitions. - John C. Reynolds (IFIP Congress (1), 1968)

A generalized resolution principle based upon context-free grammars. - John C. Reynolds (IFIP Congress (2), 1968)

GEDANKEN - a simple typeless language based on the principle of completeness and the reference concept. - John C. Reynolds (Commun. ACM, 1970)

On the Relation between Direct and Continuation Semantics. - John C. Reynolds (ICALP, 1974)

Towards a theory of type structure. - John C. Reynolds (Symposium on Programming, 1974)

Semantics of the Domain of Flow Diagrams. - John C. Reynolds (J. ACM, 1977)

Syntactic Control of Interference. - John C. Reynolds (POPL, 1978)

Reasoning About Arrays. - John C. Reynolds (Commun. ACM, 1979)

Using category theory to design implicit conversions and generic operators. - John C. Reynolds (Semantics-Directed Compiler Generation, 1980)

The craft of programming. - John C. Reynolds (Prentice Hall, 1981)

Types, Abstraction and Parametric Polymorphism. - John C. Reynolds (IFIP Congress, 1983)

An Introduction to Specification Logic. - John C. Reynolds (Logic of Programs, 1983)

Polymorphism is not Set-Theoretic. - John C. Reynolds (Semantics of Data Types, 1984)

Three Approaches to Type Structure. - John C. Reynolds (TAPSOFT, Vol.1, 1985)

Conjunctive Types and Algol-like Languages - John C. Reynolds (LICS, 1987)

Syntactic Control of Inference, Part 2. - John C. Reynolds (ICALP, 1989)

Types, Abstractions, and Parametric Polymorphism, Part 2. - QingMing Ma; John C. Reynolds (MFPS, 1991)

The Coherence of Languages with Intersection Types. - John C. Reynolds (TACS, 1991)

An Introduction to Logical Relations and Parametric Polymorphism - Tutorial. - John C. Reynolds (POPL, 1993)

The Discoveries of Continuations. - John C. Reynolds (LISP Symb. Comput., 1993)

On Functors Expressible in the Polymorphic Typed Lambda Calculus - John C. Reynolds; Gordon D. Plotkin (Inf. Comput., 1993)

Using Functor Categories to Generate Intermediate Code. - John C. Reynolds (POPL, 1995)

Beyond ML. - John C. Reynolds (ACM Comput. Surv., 1996)

Theories of programming languages. - John C. Reynolds (Cambridge University Press, 1998)

Definitional Interpreters Revisited. - John C. Reynolds (High. Order Symb. Comput., 1998)

Definitional Interpreters for Higher-Order Programming Languages. - John C. Reynolds (High. Order Symb. Comput., 1998)

An Intrinsic Semantics of Intersection Types. - John C. Reynolds (ICALP Satellite Workshops, 2000)

From Algol to polymorphic linear lambda-calculus. - Peter W. O'Hearn; John C. Reynolds (J. ACM, 2000)

The design, definition and implementation of programming languages. - John C. Reynolds (ACM SIGSOFT Softw. Eng. Notes, 2000)

Local Reasoning about Programs that Alter Data Structures. - Peter W. O'Hearn; John C. Reynolds; Hongseok Yang (CSL, 2001)

Separation Logic: A Logic for Shared Mutable Data Structures. - John C. Reynolds (LICS, 2002)

Toward a Grainless Semantics for Shared-Variable Concurrency. - John C. Reynolds (FSTTCS, 2004)

An Overview of Separation Logic. - John C. Reynolds (VSTTE, 2005)

Readable Formal Proofs. - John C. Reynolds (VSTTE, 2008)

Some thoughts on teaching programming and programming languages. - John C. Reynolds (ACM SIGPLAN Notices, 2008)

Local reasoning about a copying garbage collector. - Noah Torp-Smith; Lars Birkedal; John C. Reynolds (ACM Trans. Program. Lang. Syst., 2008)

Using Category Theory to Design Programming Languages. - John C. Reynolds (ESOP, 2009)

Separation and information hiding. - Peter W. O'Hearn; Hongseok Yang; John C. Reynolds (ACM Trans. Program. Lang. Syst., 2009)

Making Program Logics Intelligible. - John C. Reynolds (TASE, 2011)

Syntactic control of interference for separation logic. - Uday S. Reddy; John C. Reynolds (POPL, 2012)