Eric Walkingshaw

Assistant Professor
Corvallis, OR 97331, USA
Office: KEC 3049 (map)

Research Overview

My research is broadly focused on language design and domain-specific languages. I believe that clear and expressive languages are essential for understanding, solving, and explaining difficult problems. I am especially interested in type systems, functional programming, visual languages, and in designing languages for domain experts who may not be professional programmers.

Currently, I am researching formal representations and analyses of variation. This research is motived by improving the development and maintenance of massively configurable software, such as software product lines and the Linux kernel. I am the co-creator of the choice calculus, a simple calculus of variation that can be easily extended with new features and instantiated by new object languages.

See my research page for other projects, or my publications page for a list of papers.


I am serving, or have recently served, on the program committees for:


CS 381 Programming Language Fundamentals (Winter 2016)

Past courses are listed on my teaching page.


  • New DARPA grant!August 5, 2015

    We were awarded a 4 year, $1.61 million grant from DARPA (via Raytheon) to improve the reliability and longevity of software in ever-changing resource environments. Co-PIs: Alex Groce and Arash Termehchy.

  • Paper accepted to VL/HCC'15July 3, 2015

    With Keeley Abbott and Chris Bogart, our paper “Programs for People: What we can Learn from Lab Protocols” (PDF) has been accepted to VL/HCC 2015. This paper analyzes lab protocols as programs for human execution in order to identify design principles for mixed-initiative programming.

  • Best paper award at GPCE'14September 15, 2014

    Our paper on “Projectional Editing of Variational Software” (PDF) won the best paper award at GPCE 2014!

(News archive)

Elsewhere on the Web

I have accounts at all the usual places, though most of them are neglected. Here are my profiles at some sites I actively use.