{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:48:34Z","timestamp":1772164114023,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":24,"publisher":"ACM","license":[{"start":{"date-parts":[[2018,11,5]],"date-time":"2018-11-05T00:00:00Z","timestamp":1541376000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000001","name":"National Science Foundation","doi-asserted-by":"publisher","award":["CNS-1526324"],"award-info":[{"award-number":["CNS-1526324"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2018,11,5]]},"DOI":"10.1145\/3278122.3278129","type":"proceedings-article","created":{"date-parts":[[2018,10,24]],"date-time":"2018-10-24T11:28:39Z","timestamp":1540380519000},"page":"28-39","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":4,"title":["Rash: from reckless interactions to reliable programs"],"prefix":"10.1145","author":[{"given":"William Gallard","family":"Hatch","sequence":"first","affiliation":[{"name":"University of Utah, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Matthew","family":"Flatt","sequence":"additional","affiliation":[{"name":"University of Utah, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2018,11,5]]},"reference":[{"key":"e_1_3_2_1_1_1","volume-title":"Zoidberg - A modular perl shell","author":"Berger Joel","year":"2018","unstructured":"Joel Berger . Zoidberg - A modular perl shell . 2018 . https:\/\/metacpan.org\/pod\/Zoidberg. Joel Berger. Zoidberg - A modular perl shell. 2018. https:\/\/metacpan.org\/pod\/Zoidberg."},{"issue":"6","key":"e_1_3_2_1_2_1","volume":"57","author":"Bourne S. R.","year":"1978","unstructured":"S. R. Bourne . Unix Time-Sharing System : The UNIX Shell. Bell System Technical Journal 57 ( 6 ), 1978 . S. R. Bourne. Unix Time-Sharing System: The UNIX Shell. Bell System Technical Journal 57(6), 1978.","journal-title":"The UNIX Shell. Bell System Technical Journal"},{"key":"e_1_3_2_1_3_1","unstructured":"Andy Chu. Oil. 2018. https:\/\/www.oilshell.org\/.  Andy Chu. Oil. 2018. https:\/\/www.oilshell.org\/."},{"key":"e_1_3_2_1_4_1","unstructured":"David Crawshaw. Neugram Go Scripting. 2018. https:\/\/neugram.io\/.  David Crawshaw. Neugram Go Scripting. 2018. https:\/\/neugram.io\/."},{"key":"e_1_3_2_1_5_1","volume-title":"Bash-like shell based on Clojure","author":"Dundalek Jakub","year":"2018","unstructured":"Jakub Dundalek . Bash-like shell based on Clojure . 2018 . https:\/\/github.com\/dundalek\/closh. Jakub Dundalek. Bash-like shell based on Clojure. 2018. https:\/\/github.com\/dundalek\/closh."},{"key":"e_1_3_2_1_6_1","volume-title":"Plumbum: Shell Combinators and More","author":"Filiba Tomer","year":"2018","unstructured":"Tomer Filiba . Plumbum: Shell Combinators and More . 2018 . https:\/\/plumbum.readthedocs.io\/. Tomer Filiba. Plumbum: Shell Combinators and More. 2018. https:\/\/plumbum.readthedocs.io\/."},{"key":"e_1_3_2_1_7_1","volume-title":"Proc. SIGPLAN International Conference on Functional Programming","author":"Flatt Matthew","year":"2009","unstructured":"Matthew Flatt , Eli Barzilay , and Robert Bruce Findler . Scribble : closing the book on ad hoc documentation tools . In Proc. SIGPLAN International Conference on Functional Programming , 2009 . Matthew Flatt, Eli Barzilay, and Robert Bruce Findler. Scribble: closing the book on ad hoc documentation tools. In Proc. SIGPLAN International Conference on Functional Programming, 2009."},{"key":"e_1_3_2_1_8_1","unstructured":"Free Software Foundation. Eshell Manual. 2018. https:\/\/www.gnu.org\/software\/emacs\/manual\/html_mono\/eshell.html.  Free Software Foundation. Eshell Manual. 2018. https:\/\/www.gnu.org\/software\/emacs\/manual\/html_mono\/eshell.html."},{"key":"e_1_3_2_1_9_1","unstructured":"Free Software Foundation. GNU Bash. 2018. https:\/\/www.gnu.org\/software\/bash\/.  Free Software Foundation. GNU Bash. 2018. https:\/\/www.gnu.org\/software\/bash\/."},{"key":"e_1_3_2_1_10_1","volume-title":"Haskellstyle.","author":"Gonzalez Gabriel","year":"2018","unstructured":"Gabriel Gonzalez . turtle: Shell proogramming , Haskellstyle. 2018 . https:\/\/hackage.haskell.org\/package\/turtle. Gabriel Gonzalez. turtle: Shell proogramming, Haskellstyle. 2018. https:\/\/hackage.haskell.org\/package\/turtle."},{"key":"e_1_3_2_1_11_1","unstructured":"Li Haoyi. Ammonite Documentation. 2018. http:\/\/ammonite.io\/.  Li Haoyi. Ammonite Documentation. 2018. http:\/\/ammonite.io\/."},{"key":"e_1_3_2_1_12_1","volume-title":"Heller and Jesse A. Tov. Caml-Shcaml. In Proc. ML Workshop","author":"Alec","year":"2008","unstructured":"Alec Heller and Jesse A. Tov. Caml-Shcaml. In Proc. ML Workshop , 2008 . Alec Heller and Jesse A. Tov. Caml-Shcaml. In Proc. ML Workshop, 2008."},{"key":"e_1_3_2_1_13_1","volume-title":"Typescript Language Specification","year":"2018","unstructured":"Microsoft. Typescript Language Specification . 2018 . http:\/\/www.typescriptlang.org\/. Microsoft. Typescript Language Specification. 2018. http:\/\/www.typescriptlang.org\/."},{"key":"e_1_3_2_1_14_1","volume-title":"Proc. International Conference on Generative Programming and Component Engineering","author":"Rafkind Jon","year":"2012","unstructured":"Jon Rafkind and Matthew Flatt . Honu : syntactic extension for algebraic notation through enforestation . In Proc. International Conference on Generative Programming and Component Engineering , 2012 . Jon Rafkind and Matthew Flatt. Honu: syntactic extension for algebraic notation through enforestation. In Proc. International Conference on Generative Programming and Component Engineering, 2012."},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.5555\/317040"},{"key":"e_1_3_2_1_16_1","unstructured":"Anthony Scopatz. Xonsh Documentation. 2018. http:\/\/xonsh.org\/.  Anthony Scopatz. Xonsh Documentation. 2018. http:\/\/xonsh.org\/."},{"key":"e_1_3_2_1_17_1","volume-title":"MIT, TR-635","author":"Shivers Olin","year":"1994","unstructured":"Olin Shivers . A Scheme shell. Laboratory for Computer Science , MIT, TR-635 , 1994 . Olin Shivers. A Scheme shell. Laboratory for Computer Science, MIT, TR-635, 1994."},{"key":"e_1_3_2_1_18_1","volume-title":"Proc. Scheme and Functional Programming","author":"Jeremy","year":"2006","unstructured":"Jeremy G. Siek and Walid Taha. Gradual Typing for Functional Languages . In Proc. Scheme and Functional Programming , 2006 . Jeremy G. Siek and Walid Taha. Gradual Typing for Functional Languages. In Proc. Scheme and Functional Programming, 2006."},{"key":"e_1_3_2_1_19_1","unstructured":"Jeffrey P. Snover. Monad Manifesto. Microsoft 2002.  Jeffrey P. Snover. Monad Manifesto. Microsoft 2002."},{"key":"e_1_3_2_1_20_1","volume-title":"Proc. Dynamic Languages Symposium","author":"Tobin-Hochstadt Sam","year":"2006","unstructured":"Sam Tobin-Hochstadt and Matthias Felleisen . Interlanguage Migration : from Scripts to Programs . In Proc. Dynamic Languages Symposium , 2006 . Sam Tobin-Hochstadt and Matthias Felleisen. Interlanguage Migration: from Scripts to Programs. In Proc. Dynamic Languages Symposium, 2006."},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1328438.1328486"},{"key":"e_1_3_2_1_22_1","volume-title":"Jim Baker. Design and Evaluation of Gradual Typing for Python. In Proc. ACM Symposium on Dynamic Languages","author":"Vitousek Michael M.","year":"2014","unstructured":"Michael M. Vitousek , Andrew Kent , Jeremy G. Siek , and Jim Baker. Design and Evaluation of Gradual Typing for Python. In Proc. ACM Symposium on Dynamic Languages , 2014 . Michael M. Vitousek, Andrew Kent, Jeremy G. Siek, and Jim Baker. Design and Evaluation of Gradual Typing for Python. In Proc. ACM Symposium on Dynamic Languages, 2014."},{"key":"e_1_3_2_1_23_1","volume-title":"shelly: shell-like (systems) programming in Haskell","author":"Weber Greg","year":"2018","unstructured":"Greg Weber and Petr Rockai . shelly: shell-like (systems) programming in Haskell . 2018 . https:\/\/hackage.haskell.org\/package\/shelly. Greg Weber and Petr Rockai. shelly: shell-like (systems) programming in Haskell. 2018. https:\/\/hackage.haskell.org\/package\/shelly."},{"key":"e_1_3_2_1_24_1","unstructured":"Qi Xiao. Elvish. 2018. https:\/\/elv.sh\/.  Qi Xiao. Elvish. 2018. https:\/\/elv.sh\/."}],"event":{"name":"GPCE '18: 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","location":"Boston MA USA","acronym":"GPCE '18","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3278122.3278129","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3278122.3278129","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3278122.3278129","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T19:54:09Z","timestamp":1750190049000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3278122.3278129"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,11,5]]},"references-count":24,"alternative-id":["10.1145\/3278122.3278129","10.1145\/3278122"],"URL":"https:\/\/doi.org\/10.1145\/3278122.3278129","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/3393934.3278129","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2018,11,5]]},"assertion":[{"value":"2018-11-05","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}