Cyrus Omar
Assistant Professor
Computer Science and Engineering
Assistant Professor of Electrical Engineering and Computer Science, College of Engineering
I lead the Future of Programming Lab (FP Lab), where we design modern user interfaces for modern programming languages. Much of how we program today is rooted in tools designed 40+ years ago, e.g. how we enter code (using simple text editing, which leads to profligate parse errors), how we validate code (using tests or impoverished type systems), how we explore code (in a slow, batched, textual manner), how we communicate change (by throwing away the edits we performed and forcing diff algorithms to guess what we did), and so on. My lab develops new programming language and editor mechanisms, starting from theoretical foundations in mathematics and building up to human interfaces.