A Lazy Desugaring System for Evaluating Programs with Sugars

10/03/2022, 10:30am

Speaker

Ziyi Yang

Abstract

With the programming popularizing, language implementation of domain-specific languages is being more common. Syntactic sugar is widely used for easily defining DSLs (the surface language) based on host languages (the core language). However, with the traditional desugaring, the DSL's programs are evaluated in the core language, which obscures the useful intermediate executions on the surface level. In this talk, I will introduce an approach of lazy desugaring, which evaluates the programs on the surface language without losing the intermediate sequences on the surface level. Specifically, we define an evaluation strategy on a mixed language which combines syntactic sugars with the core language and prove that the evaluation strategy produces the sequence we want. The main part of the work was finished when I was at Peking University. The paper was accepted to FLOPS 2022.

Speaker Bio

Ziyi Yang is a first-year PhD student in the School of Computing at National University of Singapore advised by Prof. Ilya Sergey. His research interests include program synthesis and language design.