John C. Reynolds
From Wikipedia, the free encyclopedia
John C. Reynolds is an American computer scientist (born June 1, 1935).
John Reynolds studied at Purdue University and then earned a PhD in theoretical physics from Harvard University in 1961. He was Professor of Information science at Syracuse University from 1970 to 1986. Since then he has been Professor of Computer Science at Carnegie Mellon University. He has held visiting positions at Aarhus University (Denmark), University of Edinburgh, Imperial College London, Microsoft Research (Cambridge) and Queen Mary, University of London (UK).
Reynolds' main research interest is in the area of programming language design and associated specification languages, especially concerning formal semantics. He discovered polymorphic lambda calculus and formulated the property of semantic parametricity; the same calculus was independently discovered by Jean-Yves Girard. He wrote a seminal paper on definitional interpreters, which clarified early work on continuations and introduced the technique of defunctionalization. He defined the programming languages Gedanken and Forsythe. He has worked on a separation logic to describe and reason about shared mutable data structures.
He has been an editor of journals such as the Communications of the ACM and the Journal of the ACM. In 2001, he was appointed a Fellow of the ACM. He won the ACM SIGPLAN Programming Language Achievement Award in 2003.
[edit] Books
- Theories of Programming Languages, Cambridge University Press, 1998. ISBN 0-521-59414-6
- The Craft of Programming, Prentice Hall International, 1981. ISBN 0-13-188862-5
[edit] External links
- Home page
- Curriculum Vitae (PostScript format)
- DBLP publications
- Festschrift for his 70th birthday, edited by Olivier Danvy, Peter O'Hearn and Philip Wadler
- Program Verification and Semantics: Further Work (London, 2004)