Research Interests

I design, implement, and study programming languages. I aim for high-level language abstractions that can provide the expressiveness and assurance required to build extensible, reliable software.

Peer-Reviewed Publications
Handling Bidirectional Control Flow

Yizhou Zhang, Guido Salvaneschi, and Andrew Myers

(to appear)
Abstraction-Safe Effect Handlers via Tunneling

Algebraic effects (and hence exceptions, asynchrony, ...) made modular

Yizhou Zhang and Andrew Myers

Familia: Unifying Interfaces, Type Classes, and Family Polymorphism

A lot of polymorphism and extensibility in a lightweight package

Yizhou Zhang and Andrew Myers

Accepting Blame for Safe Tunneled Exceptions

The flexibility of unchecked exceptions, the static guarantees of checked exceptions, and good performance too

Yizhou Zhang, Guido Salvaneschi, Quinn Beightol, Barbara Liskov, and Andrew Myers

Lightweight, Flexible Object-Oriented Generics

An expressive, lightweight genericity mechanism with better code reuse and stronger static checking

Yizhou Zhang, Matthew Loring, Guido Salvaneschi, Barbara Liskov, and Andrew Myers

Ph.D. Thesis, Cornell University, 2019
Designing Flexible, Modular Linguistic Abstractions