Hello! My name is Jonathan (legally) or Jon (informally). I am a PhD student in the PLClub at UPenn after having finished my Master’s in the Software Practices Lab at UBC in 2022. My research interests include dependent types, type theory, proof assistants, type checkers, compilers, and mathematical logic.
My current advisor is Prof. Stephanie Weirich. In the past, I’ve worked with Prof. William J. Bowman on two projects, both of which are about sized types, a type-based method of checking termination of recursive functions. The first, Is Sized Typing for Coq Practical?, explores the viability of an implementation of fully-inferred sized types in Coq’s kernel in terms of performance and metatheory, and has been accepted in the Journal of Functional Programming. The second, Sized Dependent Types in Extensional Type Theory, is my Master’s thesis, and proves the logical consistency of a type theory with explicit, higher-rank, bounded size quantification by compiling it to a type theory whose consistency is more trusted. The work previously placed third in the Student Research Competition entry at POPL 2022 as Towards a Syntatic Model of Sized Dependent Types.
I have been a graduate TA for two courses at UBC: CPSC 311 (Definition of Programing Languages) in 2020WT1 and 2021WT1, where students learn about various features of PLs and write interpreters for them, and CPSC 312 (Functional and Logic Programming) in 2020WT2, where students get some hands-on experience using Haskell and Prolog. I have also been a student volunteer for POPL 2020, ICFP 2020, and POPL 2021, as well as an attendee at PLISS 2019 and OPLSS 2022.