Courses
- CSCI C311/B521: Programming Language Principles
- CSCI B522: Programming Language Foundations
- CSCI P423/P523: Compilers
- CSCI B629: Special Topics
- Spring 2023: Proofs as Programs
- Spring 2017: Dependent Types
- Spring 2017: Probabilistic Programming
- Spring 2016: Homotopy Type Theory
- Spring 2015: Metaprogramming
- Spring 2014: Probabilistic Programming
- Fall 2012: Advanced Functional Programming: Agda
- Fall 2012: High-level GPU compilers for functional array languages
- Fall 2011: Domain-Specific Languages and Compilers: Performance meets Productivity
- Spring 2011: Reversible and Quantum Computing
- Fall 2010: Integrating Static and Dynamic Typing
- Spring 2010: Language-Based Approaches to Security