I am interested broadly in the fields of programming languages and software engineering, especially where they intersect. Specifically, my research focuses on program analysis and programming language semantics, with applications in areas such as refactoring, program comprehension, and program verification. My goal is to provide developers with powerful new tools for understanding, creating, analyzing, and improving software. As part of this, I am a continuing contributor to Rascal, a meta-programming language for program analysis, program transformation, and programming language implementation. I’m also still an active user of the Maude system, focusing on uses of Maude for language specification and analysis.

  • Programming Languages
  • Program Analysis
  • Software Engineering
  • PhD in Computer Science, 2009

    University of Illinois Urbana-Champaign

  • BS in Computer Science, 1995

    Western Illinois University

Recent Publications

Quickly discover relevant content by filtering publications.
(2023). Enabling Go Program Analysis in Rascal. SCAM 2023.

PDF Cite Slides DOI

(2021). Composing Model-Based Analysis Tools, Chapter 2: Foundations. Composing Model-Based Analysis Tools.

Cite DOI

(2021). Composing Model-Based Analysis Tools, Chapter 4: Composition of Languages, Models, and Analyses. Composing Model-Based Analysis Tools.

Cite DOI

(2021). Planning a Conceptual Framework Approach for Teaching Cloud Fundamentals. ITiCSE 2021.

Cite DOI


  • [email protected]
  • +1 828 262 7159
  • 224 Joyce Lawrence Lane, ASU Box 32133, Boone, NC 28608
  • I’m on the third floor of Anne Belk Hall, room 312-L.
  • Monday 2:00pm to 4:00pm
    Wednesday 3:00pm to 4:00pm
    Thursday 10:00am to 11:00am
    Friday 11:00am to 12:00pm