Fall 2019: User Interfaces for Programming Languages

Fall 2019: User Interfaces for Programming Languages

Course No:
EECS 598
Credit Hours:
TBD
Instructor:
Cyrus Omar
Prerequisites:
Grad standing in CSE or SI or permission of instructor

Programmers interact with programming languages by way of user interfaces of widely varying design. This course will provide a broad overview of the literature on user interfaces for programming languages, covering both notable historic and contemporary designs and ongoing research topics. Topics covered may include: structure editors and block languages, tools for exploratory data analysis, visual programming, advanced autocomplete, live coding tools for musicians and artists, interactive debuggers, interactive theorem provers, educational user interfaces, end-user programming, cognitive dimensions of notation, mental models, API usability, and programmable physical environments.

More info (pdf)