[ ⊥ TEXT ]

I’m a computer science PhD candidate at Columbia University, advised by Stephen Edwards. I previously graduated from Columbia College in 2018 with a BA in computer science and music.

You can reach me via email at .


Broadly speaking, my research encompasses programming languages, compilers, and software systems. I am particularly interested in extending programming languages to support reactive real-time computing.

These days, I am working with Stephen Edwards on the Sparse Synchronous Model, a programming model with precise timing prescriptions and deterministic concurrency. In Summer 2023, I was an intern at Roblox Research, where I worked with Alan Jeffrey.



In Fall 2022, I taught COMS 3157: Advanced Programming, an introduction to systems programming with a narrative.

I’ve also been a teaching assistant for the following classes at Columbia:



I love tinkering with terminals and text editors, and am the author of fidget.nvim, an extensible UI for Neovim notifications and LSP progress messages.

Once upon a time, I composed music for humans, but nowadays I primarily produce music for computers when I have time. I was also Music Director for my college a cappella group, the Columbia Kingsmen. I’m interested in one day building programming languages for music production.