Cyrus Omar designs intelligent user interfaces for modern programming languages.

Education

Carnegie Mellon University
PhD, Computer Science
UIUC
BS, Computer Science
BS, Molecular & Cellular Biology

Advising

PhD Students

Research Staff

Masters and Undergraduates

There are 10+ masters and undergraduate researchers in FP Lab — see the FP Lab webpage!

Former Advisees

FP Lab alum also include 200+ undergraduate and MS students, 15 of whom went on to PhD programs!

Service

2026
PLDI PC · PROPL Chair · VL/HCC PC · HATRA PC · LMPL PC · PLMW @ SPLASH Speaker · SPLASH SRC Judge · CSE Course Review Committee
2024
OOPSLA PC · VL/HCC PC · Onward! PC · LIVE PC · SPLASH-E PC · HATRA Publicity Chair · CSE DEI Committee
2023
PLDI PC · ECOOP PC · VL/HCC PC · MWPLS Co-chair · TyDe SC Chair · ECOOP Area Chair (Brave New Ideas and Pearls) · HATRA PC · IFL PC · SPLASH-E PC · SPLASH SRC · PLMW @ ICFP Panelist · CSE DEI Committee · CSE Hosting Committee

For older service roles, refer to my CV.

Awards and Honors

I lead the Future of Programming Lab (FP Lab), part of the vibrant MPLSE research community.
I am on sabbatical at the University of Cambridge for 2026–27, as a Visiting Fellow in the Energy and Environment Group in the Department of Computer Science and Technology and an Associate Scholar at Pembroke College.

Syntactic Completions with Material Obligations

David Moon, Andrew Blinn, Thomas J. Porter, and Cyrus Omar.

Journal paper in Proceedings of the ACM on Programming Languages (vol 9 issue OOPSLA2).

Code editors provide essential services that help developers understand, navigate, and modify programs. However, these services often fail in the presence of syntax errors. Existing syntax error recovery techniques, like panic mode and multi-option repairs, are either too coarse, e.g. in deleting large swathes of code, or lead to a proliferation of possible completions. This paper introduces tall tylr, an error-handling parser and editor generator that completes malformed code with syntactic obligations that abstract over many possible completions. These obligations generalize the familiar notion of holes in structure editors to cover missing operands, operators, delimiters, and sort transitions.

tall tylr is backed by a novel theory of tile-based parsing, conceptually organized around a molder that turns tokens into tiles and a melder that completes and parses tiles into terms using an error-handling generalization of operator-precedence parsing. We formalize melding as a parsing calculus, meldr, that completes input tiles with additional obligations such that it can be parsed into a well-formed term, with success guaranteed over all inputs. We further describe how tall tylr implements molding and completion ranking using the principle of minimizing obligations.

Obligations offer a useful way to scaffold internal program representations, but in tall tylr we go further to investigate the potential of materializing these obligations visually to the programmer. We conduct a user study to evaluate the extent to which an editor like tall tylr that materializes syntactic obligations might be usable and useful, finding both points of positivity and interesting new avenues for future work.

# 1st Oct 2025•hazel, journal, tylr

Loading recent items...