Work experience



  • Indiana University (IU), Bloomington, Indiana. Advisor: Ryan Newton. Summer 2015–present. Pursuing Ph.D in Computer Science.
    • Teaching assistant, CSCI-P 523: Programming Language Implementation, compilers course at Indiana University, Fall 2016.
  • University of Kansas (KU), Lawrence, Kansas. Advisor: Andy Gill. Class of 2015. B.S. in Computer Science with Mathematics minor. GPA 3.9/4.0.
    • Co-chair of KU Competitive Programming Group, 2013–2015.

Professional activities



  • Detflow: towards deterministic workflows on your favorite OS. PL Wonks, Bloomington, IN. March 24, 2017. [ pdf ]




  • Glasgow Haskell Compiler (GHC) (contributor). The flagship compiler for the Haskell programming language. Contributed to GHC’s support for metaprogramming, including deriving and Template Haskell.
  • blank-canvas (co-maintainer). A Haskell binding to the HTML5 <canvas> API, which allows for graphical web applications to be written in Haskell.
  • HERMIT (contributor and tester). An interactive Haskell compiler plugin that allows a user to apply code rewrites to make the process of high-assurance software development easier. HERMIT applies several semi-formal modeling techniques such as the worker/wrapper transformation.

Software skills

  • Proficient in Haskell, C, and Java. Familiar with Android, C++, JavaScript, Liquid Haskell, Standard ML, and Scala.