{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,29]],"date-time":"2025-08-29T17:10:08Z","timestamp":1756487408046,"version":"3.44.0"},"publisher-location":"New York, NY, USA","reference-count":35,"publisher":"ACM","license":[{"start":{"date-parts":[[2025,5,14]],"date-time":"2025-05-14T00:00:00Z","timestamp":1747180800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/501100006374","name":"National Science Foundation","doi-asserted-by":"publisher","award":["2247687, 2312346, 2340479"],"award-info":[{"award-number":["2247687, 2312346, 2340479"]}],"id":[{"id":"10.13039\/501100006374","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100006374","name":"Defense Advanced Research Projects Agency","doi-asserted-by":"publisher","award":["HR001124C0486"],"award-info":[{"award-number":["HR001124C0486"]}],"id":[{"id":"10.13039\/501100006374","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2025,5,14]]},"DOI":"10.1145\/3713082.3730395","type":"proceedings-article","created":{"date-parts":[[2025,6,6]],"date-time":"2025-06-06T09:53:51Z","timestamp":1749203631000},"page":"88-95","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["From Ahead-of- to Just-in-Time and Back Again: Static Analysis for Unix Shell Programs"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0009-0000-6484-5270","authenticated-orcid":false,"given":"Lukas","family":"Lazarek","sequence":"first","affiliation":[{"name":"Brown University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0008-8850-3054","authenticated-orcid":false,"given":"Seong-Heon","family":"Jung","sequence":"additional","affiliation":[{"name":"Brown University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0009-1989-3922","authenticated-orcid":false,"given":"Evangelos","family":"Lamprou","sequence":"additional","affiliation":[{"name":"Brown University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4402-8665","authenticated-orcid":false,"given":"Zekai","family":"Li","sequence":"additional","affiliation":[{"name":"Brown University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0001-9926-6831","authenticated-orcid":false,"given":"Anirudh","family":"Narsipur","sequence":"additional","affiliation":[{"name":"Brown University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0000-4969-2376","authenticated-orcid":false,"given":"Eric","family":"Zhao","sequence":"additional","affiliation":[{"name":"Brown University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0014-7670","authenticated-orcid":false,"given":"Michael","family":"Greenberg","sequence":"additional","affiliation":[{"name":"Stevens Instisute of Technology"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-8984-6648","authenticated-orcid":false,"given":"Konstantinos","family":"Kallas","sequence":"additional","affiliation":[{"name":"UCLA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1209-7738","authenticated-orcid":false,"given":"Konstantinos","family":"Mamouras","sequence":"additional","affiliation":[{"name":"Rice University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7347-298X","authenticated-orcid":false,"given":"Nikos","family":"Vasilakis","sequence":"additional","affiliation":[{"name":"Brown University"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2025,6,6]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"Emery D Berger. 2003. Optimizing Shell Scripting Languages. Technical Report UMCS TR-2003-009. University of Massachusetts Amherst."},{"key":"e_1_3_2_1_2_1","volume-title":"2022 USENIX Annual Technical Conference (USENIX ATC 22)","author":"Curtsinger Charlie","year":"2022","unstructured":"Charlie Curtsinger and Daniel W Barowy. 2022. Riker: Always-Correct and fast incremental builds from simple specifications. In 2022 USENIX Annual Technical Conference (USENIX ATC 22). USENIX Association, Carlsbad, CA, 885--898. https:\/\/www.usenix.org\/conference\/atc22\/presentation\/curtsinger"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/3419111.3421303"},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/3106237.3106241"},{"key":"e_1_3_2_1_5_1","unstructured":"Vidar Holen et al. 2012. ShellCheck: A shell script static analysis tool. https:\/\/www.shellcheck.net\/. Accessed: 2024-10-14."},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/3371111"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/3458336.3465296"},{"key":"e_1_3_2_1_8_1","unstructured":"Michael Greenberg Konstantinos Kallas and Nikos Vasilakis. 2021. HotOS 2021: Unix Shell Programming: The Next 50 Years (Fun Applications). ACM SIGOPS Youtube. https:\/\/www.youtube.com\/watch?v=dMrfLCjtHM4#t=300s"},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/3458336.3465294"},{"key":"e_1_3_2_1_10_1","volume-title":"Report on the \"The Future of the Shell\" Panel at HotOS","author":"Greenberg Michael","year":"2021","unstructured":"Michael Greenberg, Konstantinos Kallas, Nikos Vasilakis, and Stephen Kell. 2021. Report on the \"The Future of the Shell\" Panel at HotOS 2021. arXiv:2109.11016 [cs.OS]"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/3236766"},{"key":"e_1_3_2_1_12_1","volume-title":"12th Annual Conference on Innovative Data Systems Research (CIDR'22)","author":"Herlihy Anna","year":"2022","unstructured":"Anna Herlihy, Periklis Chrysogelos, and Anastasia Ailamaki. 2022. Boosting efficiency of external pipelines by blurring application boundaries. In 12th Annual Conference on Innovative Data Systems Research (CIDR'22). Chaminade, CA, USA. https:\/\/infoscience.epfl.ch\/entities\/publication\/79f2a485-ecb5-4272-a107-bf0951d5f6aak"},{"key":"e_1_3_2_1_13_1","volume-title":"The Open Group Base Specifications Issue 7","author":"IEEE and The Open Group","year":"2018","unstructured":"IEEE and The Open Group. 2018. The Open Group Base Specifications Issue 7, 2018 edition. Volume XBD: Base Definitions. https:\/\/pubs.opengroup.org\/onlinepubs\/9699919799.2018edition\/"},{"key":"e_1_3_2_1_14_1","unstructured":"Github Inc. 2024. The top programming languages. https:\/\/github.blog\/news-insights\/octoverse\/octoverse-2024\/#the-most-popular-programming-languages."},{"key":"e_1_3_2_1_15_1","unstructured":"Nicolas Jeannerod. 2021. Verification of Shell Scripts Performing File Hierarchy Transformations. Ph.D. Dissertation. University of Paris."},{"key":"e_1_3_2_1_16_1","unstructured":"Idan Kamara. 2016. explainshell: match command-line arguments to their help text. https:\/\/explainshell.com\/ Accessed: 2024-10-20."},{"key":"e_1_3_2_1_17_1","volume-title":"Programming Languages: Application and Interpretation (3 ed.). https:\/\/www.plai.org\/","author":"Krishnamurthi Shriram","year":"2003","unstructured":"Shriram Krishnamurthi. 2003. Programming Languages: Application and Interpretation (3 ed.). https:\/\/www.plai.org\/"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/3593856.3595891"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/3491084.3491426"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1255329.1255347"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1016\/0022-0000(78)90014-4"},{"key":"e_1_3_2_1_22_1","volume-title":"Proceedings of the 11th USENIX Conference on Operating Systems Design and Implementation (OSDI'14)","author":"Moore Scott","year":"2014","unstructured":"Scott Moore, Christos Dimoulas, Dan King, and Stephen Chong. 2014. SHILL: a secure shell scripting language. In Proceedings of the 11th USENIX Conference on Operating Systems Design and Implementation (OSDI'14). USENIX Association, Broomfield, CO, USA, 183--199. https:\/\/www.usenix.org\/conference\/osdi14\/technical-sessions\/presentation\/moore"},{"key":"e_1_3_2_1_23_1","volume-title":"DiSh: Dynamic Shell-Script Distribution. In 20th USENIX Symposium on Networked Systems Design and Implementation (NSDI 23)","author":"Mustafa Tammam","year":"2023","unstructured":"Tammam Mustafa, Konstantinos Kallas, Pratyush Das, and Nikos Vasilakis. 2023. DiSh: Dynamic Shell-Script Distribution. In 20th USENIX Symposium on Networked Systems Design and Implementation (NSDI 23). USENIX Association, Boston, MA, USA, 341--356. https:\/\/www.usenix.org\/conference\/nsdi23\/presentation\/mustafa"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1016\/S1045-926X(05)80036-9"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/3290328"},{"key":"e_1_3_2_1_26_1","volume-title":"Types and Programming Languages","author":"Pierce Benjamin C.","unstructured":"Benjamin C. Pierce. 2002. Types and Programming Languages (1st ed.). The MIT Press.","edition":"1"},{"key":"e_1_3_2_1_27_1","volume-title":"POSH: A Data-Aware Shell. In 2020 USENIX Annual Technical Conference (USENIX ATC 20)","author":"Raghavan Deepti","year":"2020","unstructured":"Deepti Raghavan, Sadjad Fouladi, Philip Levis, and Matei Zaharia. 2020. POSH: A Data-Aware Shell. In 2020 USENIX Annual Technical Conference (USENIX ATC 20). USENIX Association, 617--631. https:\/\/www.usenix.org\/conference\/atc20\/presentation\/raghavan"},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/3503221.3508400"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3623759.3624546"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/2483710.2483713"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/2490822"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1328438.1328486"},{"key":"e_1_3_2_1_33_1","unstructured":"Github user keyvin. 2015. Moved ~\/.local\/share\/steam. Ran steam. It deleted everything on system owned by user. #3671. https:\/\/github.com\/ValveSoftware\/steam-for-linux\/issues\/3671. Accessed: 2025-01-01."},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/3447786.3456228"},{"key":"e_1_3_2_1_35_1","volume-title":"Proceedings of the 2012 USENIX Conference on Annual Technical Conference (USENIX ATC'12). USENIX Association, USA, 15","author":"Winstein Keith","year":"2012","unstructured":"Keith Winstein and Hari Balakrishnan. 2012. Mosh: an interactive remote shell for mobile clients. In Proceedings of the 2012 USENIX Conference on Annual Technical Conference (USENIX ATC'12). USENIX Association, USA, 15. https:\/\/www.usenix.org\/conference\/atc12\/technical-sessions\/presentation\/winstein"}],"event":{"name":"HOTOS '25: Workshop on Hot Topics in Operating Systems","sponsor":["SIGOPS ACM Special Interest Group on Operating Systems"],"location":"Banff AB Canada","acronym":"HOTOS '25"},"container-title":["Proceedings of the Workshop on Hot Topics in Operating Systems"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3713082.3730395","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3713082.3730395","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,8,29]],"date-time":"2025-08-29T16:48:14Z","timestamp":1756486094000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3713082.3730395"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,5,14]]},"references-count":35,"alternative-id":["10.1145\/3713082.3730395","10.1145\/3713082"],"URL":"https:\/\/doi.org\/10.1145\/3713082.3730395","relation":{},"subject":[],"published":{"date-parts":[[2025,5,14]]},"assertion":[{"value":"2025-06-06","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}