John C. Reynolds

E489395

John C. Reynolds was a pioneering computer scientist renowned for his foundational contributions to programming language theory, including polymorphic type systems and separation logic.

All labels observed (1)

Label Occurrences
John C. Reynolds canonical 1

How this entity was disambiguated

Statements (46)

Predicate Object
instanceOf academic
computer scientist
researcher
academicDegree PhD in theoretical physics
awardReceived ACM Fellow NERFINISHED
ACM SIGPLAN Distinguished Papers Award NERFINISHED
ACM SIGPLAN Programming Languages Achievement Award NERFINISHED
birthDate 1935-06-01
citizenship United States of America
contributedTo formal methods in software engineering
formal reasoning about mutable data structures
foundations of polymorphism in programming languages
deathDate 2013-04-28
educatedAt Harvard University
Purdue University NERFINISHED
employer Carnegie Mellon University NERFINISHED
Syracuse University NERFINISHED
fieldOfWork computer science
program verification
programming language theory
semantics of programming languages
type theory
hasAcademicDiscipline logic in computer science
theoretical computer science
influenced design of functional programming languages
development of modern type systems
research in program logics
influencedBy Alonzo Church NERFINISHED
Dana Scott NERFINISHED
Haskell Curry NERFINISHED
knownFor Reynolds abstraction theorem NERFINISHED
System F NERFINISHED
contributions to program specification
contributions to program verification
contributions to programming language design
denotational semantics
parametric polymorphism
polymorphic type systems
separation logic
languageOfWorkOrName English
memberOf Association for Computing Machinery NERFINISHED
notableWork “Separation Logic: A Logic for Shared Mutable Data Structures” NERFINISHED
“Types, Abstraction and Parametric Polymorphism” NERFINISHED
positionHeld Professor of Computer Science
workLocation Pittsburgh NERFINISHED
Syracuse NERFINISHED

How these facts were elicited

Referenced by (1)

Full triples — surface form annotated when it differs from this entity's canonical label.