{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:12:25Z","timestamp":1750219945550,"version":"3.41.0"},"publisher-location":"New York, NY, USA","reference-count":21,"publisher":"ACM","license":[{"start":{"date-parts":[[2023,8,30]],"date-time":"2023-08-30T00:00:00Z","timestamp":1693353600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2023,8,30]]},"DOI":"10.1145\/3609025.3609478","type":"proceedings-article","created":{"date-parts":[[2023,8,31]],"date-time":"2023-08-31T19:35:33Z","timestamp":1693510533000},"page":"20-28","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["Functional Shell and Reusable Components for Easy GUIs"],"prefix":"10.1145","author":[{"given":"D. Ben","family":"Knoble","sequence":"first","affiliation":[{"name":"Independent, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Bogdan","family":"Popa","sequence":"additional","affiliation":[{"name":"Independent, Romania"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2023,8,31]]},"reference":[{"key":"e_1_3_2_1_1_1","volume-title":"https:\/\/developer.apple.com\/ xcode\/swiftui\/ Retrieved","author":"UI.","year":"2023","unstructured":"Apple. SwiftUI. 2023. https:\/\/developer.apple.com\/ xcode\/swiftui\/ Retrieved June 2023."},{"key":"e_1_3_2_1_2_1","unstructured":"Gary Bernhardt. Functional Core Imperative Shell. 2012. https:\/\/www.destroyallsoftware.com\/screencasts\/ catalog\/functional-core-imperative-shell"},{"key":"e_1_3_2_1_4_1","unstructured":"Cephalofair Games. Frosthaven. 2023. https:\/\/cephalofair.com\/pages\/frosthaven"},{"key":"e_1_3_2_1_6_1","volume-title":"CS-03-20","author":"Cooper Gregory","year":"2004","unstructured":"Gregory Cooper and Shriram Krishnamurthi. FrTime: Functional Reactive Programming in PLT Scheme. Brown, CS-03-20, 2004. https:\/\/cs.brown.edu\/research\/ pubs\/techreports\/reports\/CS-03-20.html"},{"key":"e_1_3_2_1_7_1","first-page":"294","volume-title":"Proc. 15th European Conference on Programming Languages and Systems, ESOP'06","author":"Gregory","year":"2006","unstructured":"Gregory H. Cooper and Shriram Krishnamurthi. Embedding Dynamic Dataflow in a Call-by-Value Language. In Proc. 15th European Conference on Programming Languages and Systems, ESOP'06, pp. 294-308, 2006. doi: 10.1007\/11693024_20"},{"key":"e_1_3_2_1_8_1","volume-title":"Daring Fireball: Markdown","author":"Gruber John","year":"2023","unstructured":"John Gruber. Daring Fireball: Markdown. 2023. https:\/\/ daringfireball.net\/projects\/markdown\/ Retrieved June 2023."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1007\/11737414_18"},{"key":"e_1_3_2_1_10_1","first-page":"22","volume-title":"Johnson and Brian Foote. Designing Reusable Classes. Journal of Object-Oriented Programming 1 ( 2 )","author":"Ralph","year":"1988","unstructured":"Ralph E. Johnson and Brian Foote. Designing Reusable Classes. Journal of Object-Oriented Programming 1 ( 2 ), pp. 22-35, 1988. http:\/\/www.laputan.org\/drc\/drc.html"},{"key":"e_1_3_2_1_11_1","volume-title":"frosthaven-manager","author":"Knoble D. Ben","year":"2022","unstructured":"D. Ben Knoble. frosthaven-manager. 2022. https:\/\/ github.com\/benknoble\/frosthaven-manager"},{"key":"e_1_3_2_1_12_1","first-page":"26","volume-title":"A description of the model-view-controller user interface paradigm in the Smalltalk-80 system. Journal of Object-Oriented Programming 1 ( 3 )","author":"Krasner Glenn E.","year":"1988","unstructured":"Glenn E. Krasner and Stephen T. Pope. A description of the model-view-controller user interface paradigm in the Smalltalk-80 system. Journal of Object-Oriented Programming 1 ( 3 ), pp. 26-49, 1988. https:\/\/www.ics.uci.edu\/~redmiles\/ics227-SQ04\/ papers\/KrasnerPope88.pdf"},{"key":"e_1_3_2_1_13_1","volume-title":"Proc. ACM SIGPLAN conference on Object oriented programming systems languages and applications, OOPSLA 2009","author":"Meyerovich Leo A.","year":"2009","unstructured":"Leo A. Meyerovich, Arjun Guha, Jacob Baskin, Gregory H. Cooper, Michael Greenberg, Aleks Bromfield, and Shriram Krishnamurthi. Flapjax: a programming language for Ajax applications. In Proc. ACM SIGPLAN conference on Object oriented programming systems languages and applications, OOPSLA 2009, 2009. https:\/\/dl.acm.org\/doi\/10.1145\/1640089.1640091"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/28697.28698"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/98188.98204"},{"key":"e_1_3_2_1_16_1","first-page":"9","volume-title":"Thom Peters. The Andrew Toolkit-An Overview. In Proc. USENIX Winter Conference","author":"Palay Andrew J.","year":"1988","unstructured":"Andrew J. Palay, Wilfred J. Hansen, Michael L. Kazar, Mark Sherman, Maria G. Wadlow, Thom as P. Neuendorfer, Zalman Stern, Miles Bader, and Thom Peters. The Andrew Toolkit-An Overview. In Proc. USENIX Winter Conference, pp. 9-22, 1988."},{"key":"e_1_3_2_1_17_1","volume-title":"Announcing GUI Easy","author":"Popa Bogdan","year":"2021","unstructured":"Bogdan Popa. Announcing GUI Easy. 2021. https:\/\/defn. io\/ 2021 \/08\/01\/ann-gui-easy\/"},{"volume-title":"Racket Command-Line Tools","year":"2010","key":"e_1_3_2_1_18_1","unstructured":"raco: Racket Command-Line Tools. 2010. https:\/\/docs. racket-lang.org\/raco\/index.html"},{"volume-title":"https:\/\/github.com\/ reagent-project \/reagent Retrieved","year":"2023","key":"e_1_3_2_1_19_1","unstructured":"reagent-project. Reagent. 2023. https:\/\/github.com\/ reagent-project \/reagent Retrieved June 2023."},{"key":"e_1_3_2_1_20_1","volume-title":"https:\/\/react.dev Retrieved","author":"Source Meta Open","year":"2023","unstructured":"Meta Open Source. React. 2023. https:\/\/react.dev Retrieved June 2023."},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/17919.806843"},{"key":"e_1_3_2_1_22_1","volume-title":"re-frame","author":"Technology Day","year":"2023","unstructured":"Day 8 Technology. re-frame. 2023. https:\/\/github.com\/ day8\/re-frame Retrieved June 2023."},{"key":"e_1_3_2_1_23_1","volume-title":"Xerox Internal Document","author":"Wallace Donald C.","year":"1980","unstructured":"Donald C. Wallace. Tajo Functional Specification Version 6.0, Xerox Internal Document, 1980."}],"event":{"name":"FUNARCH '23: 1st ACM SIGPLAN International Workshop on Functional Software Architecture","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"],"location":"Seattle WA USA","acronym":"FUNARCH '23"},"container-title":["Proceedings of the 1st ACM SIGPLAN International Workshop on Functional Software Architecture"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3609025.3609478","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3609025.3609478","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T17:48:58Z","timestamp":1750182538000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3609025.3609478"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,8,30]]},"references-count":21,"alternative-id":["10.1145\/3609025.3609478","10.1145\/3609025"],"URL":"https:\/\/doi.org\/10.1145\/3609025.3609478","relation":{},"subject":[],"published":{"date-parts":[[2023,8,30]]},"assertion":[{"value":"2023-08-31","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}