Thomas Porter

thomasjp@umich.edu

About me: I am a first year CSE PhD student at the University of Michigan. I work in the Future of Programming Lab with Cyrus Omar. I am interested in programming languages, proof assistants, editor design, and intelligent tutoring systems, and in combining them to reinvent education in the formal sciences.

Current Research: I am currently working on an incrementalized theory of total type error localization🔗. The idea is that to maintain typing information during editing, it is too inefficient to rerun the analysis from scratch after each edit. Instead we want to reuse the typing information from the previous program state and intelligently update it at each edit. I am using bidirectional information flow and order maintenance data structures to accomplish this.

Check out dependent Hazelnut here!

Papers

Grove: A Bidirectionally Typed Structure Editor Calculus, POPL 2025 (conditionally accepted)

[pdf] Polymorphism with Typed Holes, TFP 2024

[pdf] Automatic Error Analysis for Document-level Information Extraction, ACL 2022.