Programming Languages for Approachable and Inclusive Tools
@ UC Berkeley EECS
Research Themes
PL for Social Good
We invent usable programming tools to help teams working for social good—social scientists, journalists, lawyers, domain experts focused on marginalized groups. (Working for social good and struggling to write code or process data? Get in touch!)
We combine techniques from Programming Languages and Human-Computer Interaction to make programming languages and programming tools that work better for coders and non-coders alike.
Statically-Typed Functional Program Authorship
A grounded theory of how statically-typed functional programmers write code, covering domain modeling, type construction, focusing techniques, exploratory strategies, mental models, and expressions of intent.
Program transformation tools for easing the library upgrade process. Automatic upgrade for breaking changes.
Fast Low-Overhead Recovery: Hindsight logging toolkit for model training.
Programming-by-demonstration tool for automating repetitive interactions with webpages. Designed for non-programmers from the social sciences.