Abstract / Description of output
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.
Original language | English |
---|---|
Title of host publication | GPCE 2024 - Proceedings of the 23rd ACM SIGPLAN International Conference on Generative Programming |
Subtitle of host publication | Concepts and Experiences |
Editors | Shigeru Chiba, Thomas Thüm |
Place of Publication | New York, NY, USA |
Publisher | ACM |
Pages | 80-93 |
Number of pages | 14 |
ISBN (Electronic) | 9798400712111 |
DOIs | |
Publication status | Published - 21 Oct 2024 |
Event | The 23rd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences - Hilton Pasadena, Pasadena, United States Duration: 21 Oct 2024 → 22 Oct 2024 Conference number: 23 https://2024.splashcon.org/home/gpce-2024 |
Publication series
Name | Proceedings of the ACM SIGPLAN International Conference on Generative Programming: |
---|---|
Publisher | ACM |
ISSN (Print) | 2380-9442 |
Conference
Conference | The 23rd ACM SIGPLAN International Conference on Generative Programming |
---|---|
Abbreviated title | GPCE'24 |
Country/Territory | United States |
City | Pasadena |
Period | 21/10/24 → 22/10/24 |
Internet address |
Keywords / Materials (for Non-textual outputs)
- optimizing compiler
- visitor design pattern
- type class derivation
- strategic transformation
- rewrite system
- metaprogramming
- pattern matching