A domain-specific language for structure manipulation in constraint system-based GUIs

dc.contributor.authorStokke Knut Anders
dc.contributor.authorBarash Mikhail
dc.contributor.authorJärvi Jaakko
dc.contributor.organizationfi=ohjelmistotekniikka|en=Software Engineering|
dc.contributor.organization-code1.2.246.10.2458963.20.71310837563
dc.converis.publication-id176972434
dc.converis.urlhttps://research.utu.fi/converis/portal/Publication/176972434
dc.date.accessioned2022-12-13T15:20:26Z
dc.date.available2022-12-13T15:20:26Z
dc.description.abstract<p>A common frustration with programming Graphical User Interfaces (GUIs) is that features for manipulating structures, such as lists and trees, are limited, inconsistent, buggy, or even missing. Implementing complete and convenient sets of operations for inserting, removing, and reordering elements in such structures can be tedious and difficult: a structure that appears as one collection to the user can be implemented as several different data structures and a web of dependencies between them. Structural modifications require changes both to the GUIs' model and view, and possibly extraneous bookkeeping operations, such as adding and removing event handlers.</p><p>This paper introduces a DSL that helps programmers to implement a complete set of operations to structures displayed in GUIs. The programmer specifies structures and relations between elements in the structure. Concretely, the latter are definitions of methods for establishing and unestablishing relations. Operations that manipulate structures are specified as rules that control which relations should hold before and after a rule is applied. From these specifications, our tools generate an easy-to-use API for structure manipulation. We target constraint system-based Web GUIs: the DSL generates JavaScript and relies on dataflow constraint systems for expressing dependencies between elements in GUI structures. Our DSL gives tangible representations with well-defined operations for ad-hoc and incidental GUI structures.</p>
dc.identifier.eissn2590-1184
dc.identifier.jour-issn2665-9182
dc.identifier.olddbid190563
dc.identifier.oldhandle10024/173654
dc.identifier.urihttps://www.utupub.fi/handle/11111/36242
dc.identifier.urlhttps://www.sciencedirect.com/science/article/pii/S2590118422000727
dc.identifier.urnURN:NBN:fi-fe2022121371284
dc.language.isoen
dc.okm.affiliatedauthorJärvi, Jaakko
dc.okm.discipline113 Computer and information sciencesen_GB
dc.okm.discipline113 Tietojenkäsittely ja informaatiotieteetfi_FI
dc.okm.internationalcopublicationinternational co-publication
dc.okm.internationalityInternational publication
dc.okm.typeA1 ScientificArticle
dc.publisherElsevier
dc.publisher.countryUnited Kingdomen_GB
dc.publisher.countryBritanniafi_FI
dc.publisher.country-codeGB
dc.relation.articlenumber101175
dc.relation.doi10.1016/j.cola.2022.101175
dc.relation.ispartofjournalJournal of Computer Languages
dc.relation.volume74
dc.source.identifierhttps://www.utupub.fi/handle/10024/173654
dc.titleA domain-specific language for structure manipulation in constraint system-based GUIs
dc.year.issued2023

Tiedostot

Näytetään 1 - 1 / 1
Ladataan...
Name:
1-s2.0-S2590118422000727-main.pdf
Size:
1.88 MB
Format:
Adobe Portable Document Format