Any views expressed within media held on this service are those of the contributors, should not be taken as approved or endorsed by the University, and do not necessarily reflect the views of the University in respect of any particular issue.
Abstract: Bidirectional live programming (BLP) systems allow developers to modify programs by directly manipulating their outputs, ensuring the updated programs produce the desired results. Current state-of-the-art BLP systems use an operation-based approach to capture developers’ intentions but often require hard-coded program modifications for each direct manipulation, making them difficult to extend. We propose a novel operation-based framework that automatically fuses direct manipulations into the source code, supporting a more flexible and extensible system. Furthermore, existing BLP systems are limited to static output values (e.g., integers, booleans, pairs, lists) and cannot handle dynamic output values, such as functions essential for interactive systems. To overcome this limitation, we introduce lazy bidirectional evaluation, enabling our framework to support dynamic output values. Our approach ensures that the updated program output matches the manipulated output, maintaining correctness and enhancing the usability of BLP systems.
Bio: Xing Zhang is a fourth-year Ph.D. student at the Programming Languages Laboratory, Peking University, supervised by Zhenjiang Hu. She also conducted a research visit at the Programming Languages Research Group at the University of Bristol, supervised by Meng Wang. Her research focuses on bidirectional transformations, specifically bidirectional live programming. She has published papers in top conferences such as POPL, OOPSLA, and ICSE, and has received the Huawei Scholarship.
Comments are closed
Comments to this thread have been closed by the post author or by an administrator.