John C. Reynolds Doctoral Dissertation Award

Presented annually to the author of the outstanding doctoral dissertation in the area of Programming Languages. The award includes a prize of $1,000. The winner can choose to receive the award at ICFP, OOPSLA, POPL, or PLDI.

Nominations

Nominations must be submitted to the secretary of SIGPLAN by January 5th 2014 to be considered for this year's award. The nominated dissertation must be available in an English language version to facilitate evaluation by the selection committee and have been awarded in the year 2013.

A nomination should consist of the following items:

  • Name, address, phone number, and email address of the person making the nomination (the nominator).
  • Name, address, phone number, and email address of the candidate for whom an award is recommended (the nominee).
  • A short statement (200-500 words) explaining why the nominee deserves the award in question.
  • Supporting statements from up to two people in addition to the nominator.

This award recognizes the contributions to computer science that John C. Reynolds made during his life. It is a renaming of the SIGPLAN Outstanding Doctoral Dissertation Award to encourage the clarity and rigor that Reynolds embodied and at the same time provide a reminder of Reynolds's legacy and what a difference a person can make in the field of programming language research.

Reynolds is renowned for his many technical contributions.

  • Gedanken, a core untyped language mixing functional and imperative features, which influenced Scheme;
  • Defunctionalization, which gives principled ways of constructing compilers;
  • Polymorphic λ-calculus, a fundamental calculus of polymorphic functions, which influenced Java and C# generics;
  • Syntactic control of interference, a resource-oriented type system, which prefigured linear logic;
  • λ-calculus with subtypes, which is a foundational component of object-oriented type systems;
  • Idealized Algol, a core typed language for mixing imperative and functional features, which prefigured monads in Haskell;
  • Possible-world semantics for local state, a widely-used technique in programming language theory;
  • Relational parametricity, a fundamental theory of data abstraction;
  • Separation logic, an extension of Hoare logic to mutable data structures, which forms the basis of a new generation of proof tools.

Reynolds was an inspiration to all he worked with. He was well known for helping colleagues and students work through ideas. But his influence went well beyond his immediate circle; many researchers who never worked with Reynolds nevertheless built on his ideas.

Selection Committee