GUIs often contain structures that are incidental, not properly manipulatable through well-defined APIs. For example, modifying a list of items in a GUI’s model may require extraneous bookkeeping operations in the view, such as adding and removing event handlers, and updating the menu structure. Observing GUIs in practice gives an indication that programmers may find it difficult or tedious to implement complete and convenient sets of operations for manipulating various structures: useful operations for adding, inserting, swapping, or reordering elements are often missing, inconsistent, or limited. This paper introduces a DSL for programming operations that manipulate such incidental structures. The programmer specifies structures via relations between elements, concretely by defining methods that unestablish and establish a relation. This gives the programmer an ability to describe structural transformations via rules that control which relations should hold before and after a rule is applied. The API for structure manipulation is generated from these rules. Our DSL can give an abstract view on ad-hoc structures, making it easier to provide the necessary set of operations for their convenient manipulation.
Mon 5 DecDisplayed time zone: Auckland, Wellington change
11:00 - 12:00 | SLE and GPCE PapersCOVID Time Papers In Person at Lecture Theatre 2 Chair(s): Andreea Costea School of Computing, National University Of Singapore | ||
11:00 30mTalk | FIDDLR: streamlining reuse with concern-specific modelling languages COVID Time Papers In Person Maximilian Schiedermeier McGill University, Jörg Kienzle McGill University, Canada, Bettina Kemme McGill University, Canada Link to publication DOI | ||
11:30 30mTalk | Manipulating GUI Structures Declaratively COVID Time Papers In Person Link to publication DOI |