About
I am an Assistant Professor in Programming Languages at SFU's Computing Science department.
I am looking for interested M.Sc. and Ph.D. students to join my group at Simon Fraser University in Fall 2023. Please reach out with an email.
Research Interests
I am very interested in how program synthesis can change how programmers interact with computers. I believe tools can automate many programming tasks, allowing programmers to spend less time on tedious aspects of code, and more time on implementing core algorithms. A more detailed description of my research interests is available in my Research Statement.
Current Projects
Burst - Bottom-up synthesis of functional programs from logical specifications.
Hanoi - Generating representation invariants for data structure verification through a data-driven algorithm.
Past Projects
Optician - Synthesizing data synchronization transformations from regular expression specifications and input output examples.
Blue-Pencil - Synthesizing repetitive document edits from observing user interactions with that document.
Papers
Bottom-up Synthesis of Recursive Functional Programs using Angelic Execution - POPL 2022 Paper Full Artifact
Grammatical Domains and Syntax-guided Grammar Induction - Draft Paper
Synthesizing Lenses - Thesis Paper
Confluence in Lens Synthesis - IWC 2020 Paper Video
Data-Driven Inference of Representation Invariants - PLDI 2020 Paper Full Artifact Video
On the Fly Synthesis of Edit Suggestions - OOPSLA 2019 Paper Video
Synthesizing Symmetric Lenses - ICFP 2019 Paper Full Artifact Video
Program Synthesis Through Reinforcement Learning Guided Tree Search - Arxiv Paper
Synthesizing Quotient Lenses - ICFP 2018 Paper Artifact Video
Synthesizing Bijective Lenses - POPL 2018 Paper Full Artifact Video
Talks
Bottom-Up Synthesis of Recursive Functional Programs - Jetbrains Programming Languages and Tools Lab - March 21 Seminar Video
Verification and Synthesis for Data Structures - Workshop on Dependable and Secure Software Systems 2021 Video
Expanding the Power of Lens Synthesis - BX 2019 Slides
Awards and Grants
POPL Distinguished Paper Award, 2022
PLDI Distinguished Paper Award, 2020
ACM SIGPLAN PAC Award, 2019
ACM SIGPLAN PAC Award, 2018
First Place ICFP Student Research Competition, 2017
ACM SIGPLAN PAC award, 2017
Service
APLAS 2022 Program Committee
PLDI 2022 Program Committee
ICFP 2021 Student Research Competition Chair
OOPSLA 2020 Artifact Evaluation Committee
BX 2019 Program Committee
ESOP 2019 External Reviewer
TOPLAS 2017 External Reviewer
PLDI 2017 Artifact Evaluation Committee
Updates
5/10/22 - I have been selected as a DARPA Riser for the DARPA Forward Conference Series.
5/03/22 - I have accepted a job as an Assistant Professor at Simon Fraser University.
3/2/22 - Linguistic Tools for Managing Grammatical Domains (Work in Progress) was accepted to LangSec 2022.
12/27/22 - Bottom-up Synthesis of Recursive Functional Programs using Angelic Execution got a distinguished paper award.
9/27/21 - Bottom-up Synthesis of Recursive Functional Programs using Angelic Execution was conditionally accepted into POPL 2022.
8/28/20 - I passed my thesis defense.
6/1/20 - Confluence in Lens Synthesis was accepted into IWC 2020.
Scheduling
To make planning easier, I keep my schedule publicly available here.