NOTE: I am migrating over my website from a prior format. More info will be coming shortly!
I am interested broadly in the fields of programming languages and software engineering, especially where they intersect. Specifically, my research focuses on static and dynamic program analysis; empirical software engineering; software analytics; software repository mining; automated refactoring; programming language semantics; 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.