Tue 20 Jun 2023 10:40 - 11:00 at Royal - PLDI: Synthesis Chair(s): Ilya Sergey

Modern web browsers rely on layout engines to convert HTML documents to layout trees that specify color, size, and position. However, existing layout engines are notoriously difficult to maintain because of the complexity of web standards. This is especially true for incremental layout engines, which are designed to improve performance by updating only the parts of the layout tree that need to be changed.

In this paper, we propose Medea, a new framework for automatically generating incremental layout engines. Medea separates the specification of the layout engine from its incremental implementation, and guarantees correctness through layout engine synthesis. The synthesis is driven by a new iterative algorithm based on detecting conflicts that prevent optimality of the incremental algorithm.

We evaluated Medea on a fragment of HTML layout that includes challenging features such as margin collapse, floating layout, and absolute positioning. Medea successfully synthesized an incremental layout engine for this fragment. The synthesized layout engine is both correct and efficient. In particular, we demonstrated that it avoids real-world bugs that have been reported in the layout engines of Chrome, Firefox, and Safari. The incremental layout engine synthesized by Medea is up to $1.82\times$ faster than a naive incremental baseline. We also demonstrated that our conflict-driven algorithm produces engines that are $2.74\times$ faster than a baseline without conflict analysis.

Tue 20 Jun

Displayed time zone: Eastern Time (US & Canada) change

09:00 - 11:00
PLDI: SynthesisPLDI Research Papers at Royal
Chair(s): Ilya Sergey National University of Singapore

#pldi-tue-0900-synthesis-royal Discord icon small YouTube icon small

09:00
20m
Talk
Trace-Guided Inductive Synthesis of Recursive Functional ProgramsDistinguished Paper
PLDI Research Papers
Yongwei Yuan Purdue University, Arjun Radhakrishna Microsoft, Roopsha Samanta Purdue University
DOI
09:20
20m
Talk
Inductive Program Synthesis via Iterative Forward-Backward Abstract Interpretation
PLDI Research Papers
Yongho Yoon Seoul National University, Woosuk Lee Hanyang University, Kwangkeun Yi Seoul National University
DOI
09:40
20m
Talk
ImageEye: Batch Image Processing using Program Synthesis
PLDI Research Papers
Celeste Barnaby University of Texas at Austin, Jocelyn (Qiaochu) Chen University of Texas at Austin, Roopsha Samanta Purdue University, Işıl Dillig University of Texas at Austin
DOI
10:00
20m
Talk
One Pixel Adversarial Attacks via Sketched Programs
PLDI Research Papers
DOI
10:20
20m
Talk
Absynthe: Abstract Interpretation-Guided Synthesis
PLDI Research Papers
Sankha Narayan Guria University of Maryland, Jeffrey S. Foster Tufts University, David Van Horn University of Maryland
DOI Pre-print
10:40
20m
Talk
Conflict-Driven Synthesis for Layout Engines
PLDI Research Papers
Junrui Liu University of California, Santa Barbara, Yanju Chen University of California at Santa Barbara, Eric Atkinson MIT, Yu Feng University of California at Santa Barbara, Rastislav Bodík Google Research, Brain Team
DOI