William R. Cook
Cook’s research focuses on improving the ability of programming languages to facilitate the development of efficient and maintainable software. His early work focused on the semantic and type-theoretic foundations of object-oriented programming and applying these results to improve widely-used programming languages, including Java. His current near-term research involves developing constructs for distributed and data-centric computing. His longer-term research goal is to 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.
- NSF CAREER Award
- Remote Batch Invocation for Compositional Object Services, with Ali Ibrahim, Yang Jiao, Eli Tilevich. In Proceedings of the 23rd European Conference Object-Oriented Programming (ECOOP). Lecture Notes in Computer Science 5653, pp. 595-617, 2009.
- Hybrid partial evaluation, with Amin Shali. OOPSLA 2011: 375-390. Best Student Paper.
- AppleScript. In Proceedings of the Third ACM SIGPLAN Conference on History of Programming Languages (HOPL III), ACM, 2007.
- Mixin-Based Inheritance, with Gilad Bracha. In Proceedings of the Joint European Conference on Object-Oriented Programming and ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA/ECOOP), 303-311, 1990.
- A Denotational Semantics of Inheritance and Its Correctness, with Jens Palsberg. Inf. Comput. 114(2): 329-350 (1994)
- Member of the ACM, IEEE, and the IFIP Working Groups on Programming Methodology (WG 2.3), Program Generation (WG 2.11), and Language Design (WG 2.16)
- General Conference Chair for ACM Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2010
- Program Chair for ACM Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2006
- Co-organizer and program committee chair First Dynamic Languages Symposium (DLS)
- Steering committee member of the International Conference on Object Databases (ICOODB) and the editorial board of Scalazine
- Program committees:
- ACM Conference on Principles of Programming Languages (POPL)
- European Conference on Object-Oriented Programming (ECOOP)
- ACM Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA)
- Compiler Construction (CC)
- About Us
- Research
- Faculty
- Awards & Honors
- Undergraduate Program
- Graduate Program
- Careers
- Outreach
- Alumni
- UTCS Direct
