William Cook

Associate Professor
In addition to being an Associate Professor in Texas Computer Science, William Cook is an avid researcher interested in improving the ability of programming languages to facilitate the development of efficient and maintainable software. He is currently developing constructs for distributed and data-centric computing in order to eventually develop a theory of model-driven development that enables integration of multiple domain-specific languages needed to build complex interactive software systems, including user interfaces, distributed workflow orchestration, authorization policies, and data/synchronization models.


Research Interests: 
  • Programming languages
  • Modeling languages
  • Domain-specific languages
  • Strategic programming
  • Interfacing programming languages and databases
  • Distributed computing and web services
  • Software engineering
  • Type theory
  • Mixins
  • Object-oriented programming
  • Web-based information systems

Select Publications

Wang, Yuepeng and Dillig, Isil and Lahiri, Shuvendu and Cook, William. 2018. Verifying Equivalence of Database-Driven Applications”. ACM SIGPLAN Notices.
Tijs van der Storm, William R. Cook and Alex Loh . 2014. The Design and Implementation of Object Grammars . Science of Computer Programming.
Bruno C.d.S. Oliveira, Tijs van der Storm, Alex Loh and William R. Cook. 2013. Feature-Oriented Programming with Object Algebras. ECOOP.
Bruno C.d.S. Oliveira, Tom Schrijvers and William R. Cook. 2012. Modular reasoning about interference in incremental programming. Journal of Functional Programming.
Benjamin Delaware, Bruno C. d. S. Oliveira, Tom Schrijvers. 2013. Meta-Theory à la Carte. POPL.

Awards & Honors

2005 - CAREER: Integrating Programming Languages and Databases
2007 - Architectural Metaprogramming
2008 - Structured Wide-area Programming
2014 - AITO Dahl-Nygaard Prize