About Me
I am interested in static type-checking and how to reduce the burden that it places on its users, both language designers and programmers. Most of my work focuses on gradual typing in object-oriented programming languages, but I am also interested in interactions of parsing and type checking from a language-design perspective, and in black-box runtime verification techniques that exploit unused hardware resources. I am part of the Henzinger Group.
Before coming to ISTA, I obtained a PhD in Computer Science from Cornell University (advised by Ross Tate). I have been a Fulbright Exchange Student at Northeastern University, where I obtained an M.S. in Computer Science. I got a BSc in Software and Information Engineering from TU Wien (Austria).
Research
Gradual Typing Research Summary
Gradual Typing lets programmers decide when to use static type-checking in a program instead of the traditional all-or-nothing choice they had when choosing a language that either featured static type-checking or doesn't. However, it remains challenging to design type system features common in today's major object-oriented languages in such a way that they interact well with gradual typing, and it also remains challenging to implement gradual typing efficiently.
Publications
Theses
Awards
- Distinguished Reviewer (OOPSLA 2019 Artifacts)
- Distinguished Paper Award (OOPSLA 2017)
- Facebook Fellowship Finalist (2015, 2017)
- Teaching Award, Cornell University (2014)
- Teaching Award, Northeastern University (2013)
- Yiannis Tsiounis Scholarship (2012)
- Fulbright Exchange Grant (2011)
Teaching
- Cornell
- CS 2800 - Discrete Structures
- Spring 2014 (TA)
- CS 4120 - Introduction to Compilers
- Fall 2013 (TA)
- CS 2800 - Discrete Structures
- Northeastern
- CS 5010 - Program Design Paradigms
- Fall 2012 (Head TA)
- Spring 2012 (TA)
- CS 5010 - Program Design Paradigms
- TU Wien
- E 185.162 - Object-Oriented Programming
- Winter 2010 (Tutor ~TA)
- Winter 2009 (Tutor ~TA)
- E 185.179 - Logic Programming
- Summer 2010 (Tutor ~TA)
- Winter 2009 (Tutor ~TA)
- E 185.162 - Object-Oriented Programming
Other Activities
Research Community
- ERC Member and Artifact Reviewer for OOPSLA 2022
- Reviewed Artifacts for ECOOP 2018 and OOPSLA 2019
- Organized Cornell PL Retreats 2015 and 2017
- Student Volunteer at PLDI 2017 and PLDI 2018
Outreach
- Expand Your Horizons (Cornell)
- Zoom a Scientist (ISTA)
Hobbies
I spend most of my non-CS time playing board- and computer games that ideally are either about trust between players or building a large economy (or both). I bake cakes, and I like skiing and hiking.