Traversing complex Abstract Syntax Trees (ASTs) typically requires large amounts of tedious boilerplate code. For many operations most of the code simply walks the structure, and only a small portion of the code implements the functionality that motivated the traversal in the first place. This paper presents a type-safe Java framework called Shy that removes much of this boilerplate code. In Shy object algebras are used to describe complex and extensible AST structures. Using Java annotations Shy generates generic boilerplate code for various types of traversals. For a concrete traversal, users of Shy can then inherit from the generated code and override only the interesting cases. Consequently, the amount of code that users need to write is significantly smaller. Moreover, traversals using the Shy framework are also much more structure shy, becoming more adaptive to future changes or extensions to the AST structure. To prove the effectiveness of the approach, we applied Shy in the implementation of a domain-specific questionnaire language. Our results show that for a large number of traversals there was a significant reduction in the amount of user-defined code.
Wed 28 OctDisplayed time zone: Eastern Time (US & Canada) change
10:30 - 12:00 | 2. Domain Specific LanguagesOOPSLA at Grand Station 2 Chair(s): Eelco Visser Delft University of Technology | ||
10:30 22mTalk | Synthesis of Layout Engines from Relational Constraints OOPSLA Link to publication Media Attached | ||
10:52 22mTalk | A Sound and Optimal Incremental Build System with Dynamic Dependencies OOPSLA Sebastian Erdweg TU Darmstadt, Germany, Moritz Lichter TU Darmstadt, Germany, Manuel Weiel TU Darmstadt, Germany Link to publication Media Attached | ||
11:15 22mTalk | FlashMeta: A Framework for Inductive Program Synthesis OOPSLA Link to publication DOI Media Attached | ||
11:37 22mTalk | Scrap your Boilerplate with Object Algebras OOPSLA Haoyuan Zhang University of Hong Kong, China, Zewei Chu University of Hong Kong, China, Bruno C. d. S. Oliveira University of Hong Kong, China, Tijs van der Storm CWI Link to publication Media Attached |