He is the recipient of the 2017 Charles E. Bower Faculty Teaching Award, a recipient of a National Science Foundation CAREER Award, and a 2005-2007 McKnight Land-Grant professor. He earned an B.A. in Mathematics and Computer Science from Luther College and a Ph.D. in Computer Science from The University of Iowa. He was a post-doc at Oxford University before joining the University of Minnesota. His research interests include techniques for the declarative specification and implementation of programming and modeling languages. Of particular interest is the application of such techniques to extensible languages and modular language extensions in which language extensions can be automatically and reliably composed with a host language specification.