See all NewsEngineering News
Honors and Awards

Christos Dimoulas Receives Prestigious NSF CAREER Award

Award supports theoretical and empirical research investigating programming languages pragmatics

Northwestern Engineering's Christos Dimoulas has received the prestigious Faculty Early Career Development (CAREER) Award from the National Science Foundation (NSF), the foundation’s most prestigious honor for junior faculty members.

Northwestern University assistant professors Xiumin Du, Daniel Horton, and Hatim Rahman also received CAREER Awards.

Dimoulas is an assistant professor of computer science in the McCormick School of Engineering. He will receive $534,000 over five years from NSF’s Division of Computing and Communication Foundations for his project, titled "The Rational Programmer, An Investigative Method for Programming Language Pragmatics."

Du is an assistant professor of mathematics in the Weinberg College of Arts and Sciences. She will receive $498,420 over five years from NSF’s Division of Mathematical Sciences.

Horton is an assistant professor of Earth and planetary sciences in Weinberg. He will receive $600,000 over five years from NSF’s Division of Chemical, Bioengineering, Environmental and Transport Systems.

Rahman is an assistant professor of management and organizations at the Kellogg School of Management. He will receive $485,595 over five years from the Division of Social and Economic Sciences.

The CAREER Award is designed to support promising young faculty members who exemplify the role of teacher-scholar through the combination of outstanding research and education.

Christos Dimoulas

Christos DimoulasDimoulas’ research combines theory and empirical experimentation to investigate programming languages pragmatics, i.e., whether a programming language feature helps or hinders software developers in the context of a work task, such as debugging, testing or refactoring code. He then employs the findings to (re)design programming language features and tools with pragmatics in mind.

For his NSF CAREER project, Dimoulas will develop a new empirical technique for evaluating programming languages pragmatics. The technique imagines developers as rational actors that use a language feature to complete a work task. In the technique, such actors become computational processes, dubbed rational programmers.

The specific strategy that each rational programmer uses to decide how to act codifies a hypothesis about how a language feature helps a developer in the context of the given task. Based on this idea, Dimoulas and his group will use rational programmers to conduct large-scale simulations and investigate when and how different language features help developers.

Dimoulas’ application of the research will include integrating the rational programmer in his undergraduate and graduate programming languages courses as a pedagogical instrument that students can use to examine the trade-offs involved when selecting between languages and language features.