A domain-specific language for structure manipulation in constraint system-based GUIs
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...
Uloženo v:
| Vydáno v: | Journal of computer languages (Online) Ročník 74; s. 101175 |
|---|---|
| Hlavní autoři: | , , |
| Médium: | Journal Article |
| Jazyk: | angličtina |
| Vydáno: |
Elsevier Ltd
01.01.2023
|
| Témata: | |
| ISSN: | 2590-1184, 2590-1184 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
| Abstract | 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 GUI’s model and view, and possibly extraneous bookkeeping operations, such as adding and removing event handlers.
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. |
|---|---|
| AbstractList | 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 GUI’s model and view, and possibly extraneous bookkeeping operations, such as adding and removing event handlers.
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. |
| ArticleNumber | 101175 |
| Author | Järvi, Jaakko Stokke, Knut Anders Barash, Mikhail |
| Author_xml | – sequence: 1 givenname: Knut Anders orcidid: 0000-0002-9109-0771 surname: Stokke fullname: Stokke, Knut Anders email: knut.stokke@uib.no organization: University of Bergen, Norway – sequence: 2 givenname: Mikhail surname: Barash fullname: Barash, Mikhail email: mikhail.barash@uib.no organization: University of Bergen, Norway – sequence: 3 givenname: Jaakko orcidid: 0000-0002-3418-7366 surname: Järvi fullname: Järvi, Jaakko email: jaakko.jarvi@utu.fi organization: University of Bergen, Norway |
| BookMark | eNp9kMtqwzAQRUVJoWmaH-hKP-BUkiM_oJsQ2jQQ6KZZC3k0Dgq2FCS5kL-vTbroqqsZZjiXy3kkM-cdEvLM2YozXrycV-A7vRJMiOnAS3lH5kLWLOO8Ws_-7A9kGeOZMSbqIpdlPifHDTW-19Zl8YJgWwu00-406BPS1gcaUxggDQFpr529DJ1O1jtqHQXvxudIJhqvMWGfNTqiobvjPj6R-1Z3EZe_c0GO729f24_s8LnbbzeHDEQtUwZaS1HUjSkaYbjRwLHMqxp0VXMOQgAv2JpVpuBl3jaSodBsDZUEmUPZ8CpfEHHLheBjDNiqS7C9DlfFmZrcqLOa3KjJjbq5GaHXG4Rjs2-LQUWw6ACNDQhJGW__w38AQfNvZQ |
| Cites_doi | 10.1109/32.601073 10.1016/j.jlap.2009.06.002 10.1145/2480361.2371413 10.5381/jot.2014.13.4.a1 10.1145/120782.120805 10.1109/2.60882 10.1145/2103736.2103741 10.1145/225540.225543 10.1007/BF02253685 |
| ContentType | Journal Article |
| Copyright | 2022 The Author(s) |
| Copyright_xml | – notice: 2022 The Author(s) |
| DBID | 6I. AAFTH AAYXX CITATION |
| DOI | 10.1016/j.cola.2022.101175 |
| DatabaseName | ScienceDirect Open Access Titles Elsevier:ScienceDirect:Open Access CrossRef |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 2590-1184 |
| ExternalDocumentID | 10_1016_j_cola_2022_101175 S2590118422000727 |
| GroupedDBID | 6I. AAEDW AAFTH AAIAV AAKOC AALRI AAXUO AAYFN ABBOA ACDAQ ACRLP AEBSH AFKWA AFTJW AIEXJ AIKHN AITUG ALMA_UNASSIGNED_HOLDINGS AMRAJ AOUOD AXJTR BKOJK EBS EFBJH EFLBG EJD FDB FYGXN KOM M41 ROL SPC SPCBC SSV SSZ T5K 0R~ AATTM AAXKI AAYWO AAYXX ABJNI ACLOT ACVFH ADCNI AEIPS AEUPX AFJKZ AFPUW AIGII AIIUN AKBMS AKRWK AKYEP ANKPU APXCP CITATION EFKBS |
| ID | FETCH-LOGICAL-c295t-caa5269bd6b2d1dac1e7389ca8911c22c160408d6173fb50e2a04c85c53c7b183 |
| ISICitedReferencesCount | 2 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000905016500001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 2590-1184 |
| IngestDate | Thu Nov 20 00:52:32 EST 2025 Fri Feb 23 02:37:36 EST 2024 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Keywords | Separation of concerns Rule based systems GUI programming Declarative programming Dataflow constraint systems |
| Language | English |
| License | This is an open access article under the CC BY license. |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-c295t-caa5269bd6b2d1dac1e7389ca8911c22c160408d6173fb50e2a04c85c53c7b183 |
| ORCID | 0000-0002-9109-0771 0000-0002-3418-7366 |
| OpenAccessLink | https://dx.doi.org/10.1016/j.cola.2022.101175 |
| ParticipantIDs | crossref_primary_10_1016_j_cola_2022_101175 elsevier_sciencedirect_doi_10_1016_j_cola_2022_101175 |
| PublicationCentury | 2000 |
| PublicationDate | January 2023 2023-01-00 |
| PublicationDateYYYYMMDD | 2023-01-01 |
| PublicationDate_xml | – month: 01 year: 2023 text: January 2023 |
| PublicationDecade | 2020 |
| PublicationTitle | Journal of computer languages (Online) |
| PublicationYear | 2023 |
| Publisher | Elsevier Ltd |
| Publisher_xml | – name: Elsevier Ltd |
| References | B.A. Myers, Separating application code from toolkits: Eliminating the spaghetti of call-backs, in: Proceedings of the 4th Annual ACM Symposium on User Interface Software and Technology, 1991, pp. 211–220. Bettini (b29) 2016 Efftinge, Zarnekow (b30) 2020 Miranker, Winkler (b40) 1984; 32 (b11) 2020 Järvi, Marcus, Parent, Freeman, Smith (b23) 2009 Perez De Rosso, Jackson, Archie, Lao, McNamara III (b34) 2019 (b31) 2021 Groenewegen, Hemel, Kats, Visser (b36) 2008 Myers, McDaniel, Miller, Ferrency, Faulring, Kyle, Mickish, Klimovitski, Doane (b19) 1997; 23 Vander Zanden (b17) 1996; 18 Freeman, Järvi, Foust (b14) 2012; 48 Oney, Myers, Brandt (b37) 2012 (Accessed: 2022-11-24). Krasner, Pope (b6) 1988; 1 Drewes, Kreowski, Habel (b39) 1997 ApplyTexas web application (b33) 2022 Foust, Järvi, Parent (b15) 2015 ReactiveUI—An advanced, composable, functional reactive model-view-viewmodel framework for all .NET platforms Erdweg, van der Storm, Völter, Tratt, Bosman, Cook, Gerritsen, Hulshout, Kelly, Loh, Konat, Molina, Palatnik, Pohjonen, Schindler, Schindler, Solmi, Vergu, Visser, Woning (b28) 2015; 44 Freeman, Järvi, Kim, Marcus, Parent (b24) 2011 Google LLC (b32) 2020 Sutherland (b18) 1964 Stokke, Barash, Järvi (b4) 2020 Felgentreff, Borning, Hirschfeld (b38) 2014; 13 Burrows, Haveraaen (b41) 2009; 78 Farrar (b10) 2015 Apple Inc. (b22) 2022 S. Parent, A possible future for software development, in: Keynote Talk at the Workshop of Library-Centric Software Design, 2006, URL. E. Czaplicki, The Elm Architecture, URL . Gossman (b7) 2005 Sannella (b21) 1994 Järvi (b16) 2021 E. Burrows, M. Haveraaen, Programmable data dependencies and placements, in: Proceedings of the 7th Workshop on Declarative Aspects and Applications of Multicore Programming, 2012, pp. 31–40. Madsen, Lhoták, Tip (b12) 2020; 166 (b35) 2021 Eysholdt, Rupprecht (b27) 2010 Clark, DeRose (b25) 1999 Myers, Rosson (b2) 1992 Potel (b8) 1996 Myers, Giuse, Dannenberg, Zanden, Kosbie, Pervin, Mickish, Marchal (b20) 1990; 23 Steinberg, Budinski, Paternostro, Merks (b26) 2008 Oney (10.1016/j.cola.2022.101175_b37) 2012 Freeman (10.1016/j.cola.2022.101175_b14) 2012; 48 Clark (10.1016/j.cola.2022.101175_b25) 1999 Perez De Rosso (10.1016/j.cola.2022.101175_b34) 2019 (10.1016/j.cola.2022.101175_b35) 2021 Sutherland (10.1016/j.cola.2022.101175_b18) 1964 Erdweg (10.1016/j.cola.2022.101175_b28) 2015; 44 10.1016/j.cola.2022.101175_b42 10.1016/j.cola.2022.101175_b1 Bettini (10.1016/j.cola.2022.101175_b29) 2016 10.1016/j.cola.2022.101175_b5 Potel (10.1016/j.cola.2022.101175_b8) 1996 (10.1016/j.cola.2022.101175_b31) 2021 Efftinge (10.1016/j.cola.2022.101175_b30) 2020 Myers (10.1016/j.cola.2022.101175_b2) 1992 10.1016/j.cola.2022.101175_b3 10.1016/j.cola.2022.101175_b9 (10.1016/j.cola.2022.101175_b11) 2020 Felgentreff (10.1016/j.cola.2022.101175_b38) 2014; 13 Madsen (10.1016/j.cola.2022.101175_b12) 2020; 166 Foust (10.1016/j.cola.2022.101175_b15) 2015 Steinberg (10.1016/j.cola.2022.101175_b26) 2008 Myers (10.1016/j.cola.2022.101175_b19) 1997; 23 Eysholdt (10.1016/j.cola.2022.101175_b27) 2010 Google LLC (10.1016/j.cola.2022.101175_b32) 2020 Myers (10.1016/j.cola.2022.101175_b20) 1990; 23 Miranker (10.1016/j.cola.2022.101175_b40) 1984; 32 Stokke (10.1016/j.cola.2022.101175_b4) 2020 Järvi (10.1016/j.cola.2022.101175_b23) 2009 10.1016/j.cola.2022.101175_b13 Burrows (10.1016/j.cola.2022.101175_b41) 2009; 78 Sannella (10.1016/j.cola.2022.101175_b21) 1994 Groenewegen (10.1016/j.cola.2022.101175_b36) 2008 Krasner (10.1016/j.cola.2022.101175_b6) 1988; 1 Freeman (10.1016/j.cola.2022.101175_b24) 2011 Gossman (10.1016/j.cola.2022.101175_b7) 2005 Apple Inc. (10.1016/j.cola.2022.101175_b22) 2022 (10.1016/j.cola.2022.101175_b33) 2022 Farrar (10.1016/j.cola.2022.101175_b10) 2015 Järvi (10.1016/j.cola.2022.101175_b16) 2021 Vander Zanden (10.1016/j.cola.2022.101175_b17) 1996; 18 Drewes (10.1016/j.cola.2022.101175_b39) 1997 |
| References_xml | – year: 2020 ident: b32 article-title: Angular – year: 2016 ident: b29 article-title: Implementing Domain-Specific Languages with Xtext and Xtend – reference: B.A. Myers, Separating application code from toolkits: Eliminating the spaghetti of call-backs, in: Proceedings of the 4th Annual ACM Symposium on User Interface Software and Technology, 1991, pp. 211–220. – volume: 44 start-page: 24 year: 2015 end-page: 47 ident: b28 article-title: Evaluating and comparing language workbenches: Existing results and benchmarks for the future publication-title: Comput. Lang. Syst. Struct. – reference: ApplyTexas web application – start-page: 195 year: 1992 end-page: 202 ident: b2 article-title: Survey on user interface programming publication-title: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems – start-page: 97 year: 2010 end-page: 104 ident: b27 article-title: Migrating a large modeling environment from XML/UML to Xtext/GMF publication-title: Companion to the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, SPLASH/OOPSLA – reference: (Accessed: 2022-11-24). – year: 2005 ident: b7 article-title: Introduction to Model/View/ViewModel pattern for building WPF apps – year: 2008 ident: b26 article-title: EMF : Eclipse Modeling Framework – year: 2021 ident: b16 article-title: HotDrink – year: 2020 ident: b11 article-title: React—A JavaScript library for building user interfaces – reference: ReactiveUI—An advanced, composable, functional reactive model-view-viewmodel framework for all .NET platforms, – volume: 13 start-page: 1:1 year: 2014 end-page: 38 ident: b38 article-title: Specifying and solving constraints on object behavior publication-title: J. Object Technol. – start-page: 95 year: 1997 end-page: 162 ident: b39 article-title: Hyperedge replacement graph grammars publication-title: Handbook of Graph Grammars and Computing by Graph Transformation: Volume I. Foundations – volume: 18 start-page: 30 year: 1996 end-page: 72 ident: b17 article-title: An incremental algorithm for satisfying hierarchies of multiway dataflow constraints publication-title: ACM Trans. Program. Lang. Syst. – year: 2021 ident: b31 article-title: Elm programming language – start-page: 779 year: 2008 end-page: 780 ident: b36 article-title: WebDSL: A domain-specific language for dynamic web applications publication-title: Companion To the 23rd ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications – volume: 166 start-page: 12:1 year: 2020 end-page: 12:26 ident: b12 article-title: A semantics for the essence of React publication-title: 34th European Conference on Object-Oriented Programming, ECOOP 2020, November 15-17, 2020, Berlin, Germany (Virtual Conference) – year: 2022 ident: b33 article-title: Svelte: Cybernetically enhanced web apps – volume: 78 start-page: 519 year: 2009 end-page: 538 ident: b41 article-title: A hardware independent parallel programming model publication-title: J. Log. Algebr. Program. – reference: E. Burrows, M. Haveraaen, Programmable data dependencies and placements, in: Proceedings of the 7th Workshop on Declarative Aspects and Applications of Multicore Programming, 2012, pp. 31–40. – reference: S. Parent, A possible future for software development, in: Keynote Talk at the Workshop of Library-Centric Software Design, 2006, URL. – year: 1999 ident: b25 article-title: XML path language (XPath), W3C Recommendation – year: 2020 ident: b30 article-title: Xtend—modernized Java – volume: 1 start-page: 26 year: 1988 end-page: 49 ident: b6 article-title: A cookbook for using the model-view controller user interface paradigm in smalltalk-80 publication-title: J. Object Oriented Program. – start-page: 121 year: 2015 end-page: 130 ident: b15 article-title: Generating reactive programs for graphical user interfaces from multi-way dataflow constraint systems publication-title: Proceedings of the 2015 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences – year: 2022 ident: b22 article-title: View layout – start-page: 229 year: 2012 end-page: 238 ident: b37 article-title: ConstraintJS: Programming interactive behaviors for the Web by integrating constraints and states publication-title: Proceedings of the 25th Annual ACM Symposium on User Interface Software and Technology – year: 2021 ident: b35 article-title: JSON Forms – start-page: 6329 year: 1964 end-page: 6346 ident: b18 article-title: Sketchpad: A man-machine graphical communication system publication-title: DAC ’64: Proceedings of the SHARE Design Automation Workshop – volume: 32 start-page: 93 year: 1984 end-page: 114 ident: b40 article-title: Spacetime representations of computational structures publication-title: Computing – volume: 23 start-page: 71 year: 1990 end-page: 85 ident: b20 article-title: Garnet: Comprehensive support for graphical, highly interactive user interfaces publication-title: Computer – reference: . – start-page: 147 year: 2009 end-page: 156 ident: b23 article-title: Algorithms for user interfaces publication-title: GPCE’09: Int. Conf. on Generative Programming and Component Engineering – start-page: 79 year: 2019 end-page: 93 ident: b34 article-title: Declarative assembly of web applications from predefined concepts publication-title: Proceedings of the 2019 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software – year: 1996 ident: b8 article-title: MVP: Model-view-presenter: The Taligent programming model for C++ and Java – volume: 48 start-page: 80 year: 2012 end-page: 83 ident: b14 article-title: HotDrink: A library for web user interfaces publication-title: SIGPLAN Not. – volume: 23 start-page: 347 year: 1997 end-page: 365 ident: b19 article-title: The Amulet environment: New models for effective user interface software development publication-title: Softw. Eng. – start-page: 177 year: 2011 end-page: 184 ident: b24 article-title: Helping programmers help users publication-title: GPCE’11: Int. Conference on Generative Programming and Component Engineering – start-page: 137 year: 1994 end-page: 146 ident: b21 article-title: Skyblue: A multi-way local propagation constraint solver for user interface construction publication-title: UIST ’94: Proceedings of the 7th Annual ACM Symposium on User Interface Software and Technology – year: 2015 ident: b10 article-title: KnockoutJS Web Development – start-page: 63 year: 2020 end-page: 69 ident: b4 article-title: Manipulating GUI structures declaratively publication-title: Proceedings of the 19th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences – reference: E. Czaplicki, The Elm Architecture, URL – volume: 23 start-page: 347 issue: 6 year: 1997 ident: 10.1016/j.cola.2022.101175_b19 article-title: The Amulet environment: New models for effective user interface software development publication-title: Softw. Eng. doi: 10.1109/32.601073 – volume: 44 start-page: 24 year: 2015 ident: 10.1016/j.cola.2022.101175_b28 article-title: Evaluating and comparing language workbenches: Existing results and benchmarks for the future publication-title: Comput. Lang. Syst. Struct. – volume: 78 start-page: 519 issue: 7 year: 2009 ident: 10.1016/j.cola.2022.101175_b41 article-title: A hardware independent parallel programming model publication-title: J. Log. Algebr. Program. doi: 10.1016/j.jlap.2009.06.002 – start-page: 195 year: 1992 ident: 10.1016/j.cola.2022.101175_b2 article-title: Survey on user interface programming – volume: 48 start-page: 80 issue: 3 year: 2012 ident: 10.1016/j.cola.2022.101175_b14 article-title: HotDrink: A library for web user interfaces publication-title: SIGPLAN Not. doi: 10.1145/2480361.2371413 – volume: 13 start-page: 1:1 issue: 4 year: 2014 ident: 10.1016/j.cola.2022.101175_b38 article-title: Specifying and solving constraints on object behavior publication-title: J. Object Technol. doi: 10.5381/jot.2014.13.4.a1 – ident: 10.1016/j.cola.2022.101175_b13 – start-page: 63 year: 2020 ident: 10.1016/j.cola.2022.101175_b4 article-title: Manipulating GUI structures declaratively – start-page: 95 year: 1997 ident: 10.1016/j.cola.2022.101175_b39 article-title: Hyperedge replacement graph grammars – year: 2005 ident: 10.1016/j.cola.2022.101175_b7 – start-page: 6329 year: 1964 ident: 10.1016/j.cola.2022.101175_b18 article-title: Sketchpad: A man-machine graphical communication system – year: 2022 ident: 10.1016/j.cola.2022.101175_b33 – year: 2021 ident: 10.1016/j.cola.2022.101175_b35 – ident: 10.1016/j.cola.2022.101175_b9 – year: 2020 ident: 10.1016/j.cola.2022.101175_b30 – ident: 10.1016/j.cola.2022.101175_b5 doi: 10.1145/120782.120805 – year: 2021 ident: 10.1016/j.cola.2022.101175_b31 – start-page: 229 year: 2012 ident: 10.1016/j.cola.2022.101175_b37 article-title: ConstraintJS: Programming interactive behaviors for the Web by integrating constraints and states – start-page: 177 year: 2011 ident: 10.1016/j.cola.2022.101175_b24 article-title: Helping programmers help users – ident: 10.1016/j.cola.2022.101175_b1 – start-page: 121 year: 2015 ident: 10.1016/j.cola.2022.101175_b15 article-title: Generating reactive programs for graphical user interfaces from multi-way dataflow constraint systems – volume: 23 start-page: 71 issue: 11 year: 1990 ident: 10.1016/j.cola.2022.101175_b20 article-title: Garnet: Comprehensive support for graphical, highly interactive user interfaces publication-title: Computer doi: 10.1109/2.60882 – ident: 10.1016/j.cola.2022.101175_b42 doi: 10.1145/2103736.2103741 – year: 1996 ident: 10.1016/j.cola.2022.101175_b8 – year: 2020 ident: 10.1016/j.cola.2022.101175_b32 – start-page: 79 year: 2019 ident: 10.1016/j.cola.2022.101175_b34 article-title: Declarative assembly of web applications from predefined concepts – start-page: 779 year: 2008 ident: 10.1016/j.cola.2022.101175_b36 article-title: WebDSL: A domain-specific language for dynamic web applications – volume: 18 start-page: 30 issue: 1 year: 1996 ident: 10.1016/j.cola.2022.101175_b17 article-title: An incremental algorithm for satisfying hierarchies of multiway dataflow constraints publication-title: ACM Trans. Program. Lang. Syst. doi: 10.1145/225540.225543 – ident: 10.1016/j.cola.2022.101175_b3 – year: 2020 ident: 10.1016/j.cola.2022.101175_b11 – year: 1999 ident: 10.1016/j.cola.2022.101175_b25 – start-page: 147 year: 2009 ident: 10.1016/j.cola.2022.101175_b23 article-title: Algorithms for user interfaces – year: 2015 ident: 10.1016/j.cola.2022.101175_b10 – start-page: 137 year: 1994 ident: 10.1016/j.cola.2022.101175_b21 article-title: Skyblue: A multi-way local propagation constraint solver for user interface construction – volume: 32 start-page: 93 issue: 2 year: 1984 ident: 10.1016/j.cola.2022.101175_b40 article-title: Spacetime representations of computational structures publication-title: Computing doi: 10.1007/BF02253685 – volume: 166 start-page: 12:1 year: 2020 ident: 10.1016/j.cola.2022.101175_b12 article-title: A semantics for the essence of React – year: 2021 ident: 10.1016/j.cola.2022.101175_b16 – start-page: 97 year: 2010 ident: 10.1016/j.cola.2022.101175_b27 article-title: Migrating a large modeling environment from XML/UML to Xtext/GMF – year: 2016 ident: 10.1016/j.cola.2022.101175_b29 – year: 2022 ident: 10.1016/j.cola.2022.101175_b22 – volume: 1 start-page: 26 issue: 3 year: 1988 ident: 10.1016/j.cola.2022.101175_b6 article-title: A cookbook for using the model-view controller user interface paradigm in smalltalk-80 publication-title: J. Object Oriented Program. – year: 2008 ident: 10.1016/j.cola.2022.101175_b26 |
| SSID | ssj0002963573 |
| Score | 2.2338293 |
| Snippet | A common frustration with programming Graphical User Interfaces (GUIs) is that features for manipulating structures, such as lists and trees, are limited,... |
| SourceID | crossref elsevier |
| SourceType | Index Database Publisher |
| StartPage | 101175 |
| SubjectTerms | Dataflow constraint systems Declarative programming GUI programming Rule based systems Separation of concerns |
| Title | A domain-specific language for structure manipulation in constraint system-based GUIs |
| URI | https://dx.doi.org/10.1016/j.cola.2022.101175 |
| Volume | 74 |
| WOSCitedRecordID | wos000905016500001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVESC databaseName: Elsevier SD Freedom Collection Journals 2021 customDbUrl: eissn: 2590-1184 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0002963573 issn: 2590-1184 databaseCode: AIEXJ dateStart: 20220201 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVESC databaseName: Elsevier SD Freedom Collection Journals 2021 customDbUrl: eissn: 2590-1184 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0002963573 issn: 2590-1184 databaseCode: AIEXJ dateStart: 20190201 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV07T8MwELZKy8DCG_GWB7bKqHEeTsaCeBQQYqCoW2Q7jqCFFNFS9edzjp00VIBgYInaKHYif5_O5_PnO4SOuJDgxjNGRBSkxHNTj8Bfl4jUkZ5wBGV55bmHG3Z7G_Z60V2tNi3OwkyeWZaF02n0-q9Qwz0AWx-d_QPcZadwA34D6HAF2OH6K-DbzWT4Aut9og9RaiFQGZPMJYUmYazeNtCZL4rqXc1cjq6zyULLsc3vTPQUlzQvup3RNz6stDUhyleM5tOXWtHwcGBEQNfZ-1iLKNVsE-mEv_HRo5HwDx4rko-rfBPfA1tm5Lx8MBhWgxTUrQQpclsGi6wWgbWMVzW8zKtYTidPGvqlUTfxhT5g8qwzRVF6PHv4cwbtuZmt1BsWUrZ-rPuIdR-x6WMBNSjzI7CHjXbnrHdVxudopDP1aYFC-e32zJWRB85_zNd-TcVXuV9FyxYg3DbkWEM1la2jlaKAB7b2fAN123iOK7gAEgNXcMkVXOUKfsrwjCu4yhWsubKJuudn96eXxNbZIJJG_phIznWdeZEEgiZOwqWjGPixkocwE0pKpROAqQ8TcHbdVPgtRXnLk6EvfVcyAXPCFqpnw0xtIxyIxGGJADeUpR5PhQiUm1Jo4wRKhIrvoGYxSvGrSacSfw_ODvKLgYytQ2gcvRio8UO73T-9ZQ8tzSi7j-owtOoALcrJ-Gn0dmh58QFX2IIB |
| linkProvider | Elsevier |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=A+domain-specific+language+for+structure+manipulation+in+constraint+system-based+GUIs&rft.jtitle=Journal+of+computer+languages+%28Online%29&rft.au=Stokke%2C+Knut+Anders&rft.au=Barash%2C+Mikhail&rft.au=J%C3%A4rvi%2C+Jaakko&rft.date=2023-01-01&rft.issn=2590-1184&rft.volume=74&rft.spage=101175&rft_id=info:doi/10.1016%2Fj.cola.2022.101175&rft.externalDBID=n%2Fa&rft.externalDocID=10_1016_j_cola_2022_101175 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2590-1184&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2590-1184&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2590-1184&client=summon |