For a better experience, click the Compatibility Mode icon above to turn off Compatibility Mode, which is only for viewing older websites.

Photo Unavailable

Colin Gordon

Assistant Professor

Computer Science

Colin Gordon's research interests include finding new ways to improve software reliability, especially providing strong static guarantees about program behavior, for concurrent and systems-level code. His previous work has focused on the formal verification of concurrent programs; he is also interested in other levels of formal assurance, programming models, distributed computing and testing. Gordon, whose industry experience includes working in an operating system incubation group at Microsoft and in Network Appliance Inc.'s filesystem group, previously served as senior research engineer at Samsung Research America.


  • PhD, Computer Science (with a focus on formal verification of concurrent programs), University of Washington
  • MS, Computer Science, University of Washington
  • ScB, Computer Science, Brown University

Research/Teaching Interests

Programming languages and formal methods; type systems and program verification for concurrent programs

Select Publications

  • Colin S. Gordon, Werner M. Dietl, Michael D. Ernst, and Dan Grossman. JavaUI: Effects for Controlling UI Object Access. In Proceedings of the 27th European Conference on Object-Oriented Programming (ECOOP 2013), pages 179–204, Montpellier, France. July 2013.
  • Colin S. Gordon, Michael D. Ernst, and Dan Grossman. Rely-Guarantee References for Refinement Types Over Aliased Mutable Data. In Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2013), pages 73—84, Seattle, WA, USA. June 2013.
  • Colin S. Gordon, Matthew J. Parkinson, Jared Parsons, Aleks Bromfield, and Joe Duffy. Uniqueness and Reference Immutability for Safe Parallelism. In Proceedings of the 27th ACM SIGPLAN Conference on Object Oriented Programming Systems, Languages, and Applications (OOPSLA 2012), pages 21—40, Tucson, AZ, USA. October 2012.

Professional Activities & Associations

  • External Review Committee for ECOOP 2016
  • Member, Association for Computing Machinery:
    • Special Interest Group on Programming Languages
    • Special Interest Group on Logic and Computation