Restaging Domain-Specific Languages: A Flexible Design Pattern for Rapid Development of Optimizing Compilers
This paper addresses the complexity of developing optimizing compilers by proposing a novel design pattern named Restage. The Restage interface reduces boilerplate code in transformation passes by simplifying the extraction and reconstruction of language constructs, thereby enabling more efficient and maintainable compiler development. This approach automatically generates the necessary interface instances using metaprogramming, minimizing manual effort. Additionally, the proposed solution integrates seamlessly with existing methodologies for building optimizing compilers, including strategy-based transformations and the visitor design pattern. The Restage design pattern significantly reduces the complexity and maintenance cost of compilers for generic-purpose and domain-specific languages.
Tue 22 OctDisplayed time zone: Pacific Time (US & Canada) change
14:00 - 15:30 | Session 3 on Code OptimizationsGPCE at San Marino Chair(s): Lionel Parreaux HKUST (The Hong Kong University of Science and Technology) | ||
14:00 30mTalk | Type-Safe Code Generation With Algebraic Effects and HandlersDistinguished Research Paper Award GPCE Kanaru Isoda University of Tsukuba, Ayato Yokoyama University of Tsukuba, Yukiyoshi Kameyama University of Tsukuba | ||
14:30 30mTalk | Hot Call-Chain Inlining for the Glasgow Haskell Compiler GPCE | ||
15:00 30mTalk | Restaging Domain-Specific Languages: A Flexible Design Pattern for Rapid Development of Optimizing Compilers GPCE Amir Shaikhha University of Edinburgh |