{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,2]],"date-time":"2026-07-02T23:46:02Z","timestamp":1783035962001,"version":"3.54.6"},"publisher-location":"New York, NY, USA","reference-count":97,"publisher":"ACM","license":[{"start":{"date-parts":[[2021,4,17]],"date-time":"2021-04-17T00:00:00Z","timestamp":1618617600000},"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-1955965"],"award-info":[{"award-number":["CNS-1955965"]}],"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":[[2021,4,19]]},"DOI":"10.1145\/3445814.3446756","type":"proceedings-article","created":{"date-parts":[[2021,4,11]],"date-time":"2021-04-11T17:06:26Z","timestamp":1618160786000},"page":"616-629","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":31,"title":["Automatically detecting and fixing concurrency bugs in go software systems"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-2701-6657","authenticated-orcid":false,"given":"Ziheng","family":"Liu","sequence":"first","affiliation":[{"name":"Pennsylvania State University, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3689-7668","authenticated-orcid":false,"given":"Shuofei","family":"Zhu","sequence":"additional","affiliation":[{"name":"Pennsylvania State University, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-8510-8656","authenticated-orcid":false,"given":"Boqin","family":"Qin","sequence":"additional","affiliation":[{"name":"Beijing University of Posts and Telecommunications, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-4072-0710","authenticated-orcid":false,"given":"Hao","family":"Chen","sequence":"additional","affiliation":[{"name":"University of California at Davis, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-3185-9278","authenticated-orcid":false,"given":"Linhai","family":"Song","sequence":"additional","affiliation":[{"name":"Pennsylvania State University, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2021,4,17]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"A command-line fuzzy finder. https:\/\/github.com\/junegunn\/fzf.  A command-line fuzzy finder. https:\/\/github.com\/junegunn\/fzf."},{"key":"e_1_3_2_1_2_1","unstructured":"A curated list of awesome Go frameworks libraries and software. https:\/\/github.com\/avelino\/awesome-go.  A curated list of awesome Go frameworks libraries and software. https:\/\/github.com\/avelino\/awesome-go."},{"key":"e_1_3_2_1_3_1","unstructured":"A distributed reliable key-value store for the most critical data of a distributed system. https:\/\/github.com\/coreos\/etcd.  A distributed reliable key-value store for the most critical data of a distributed system. https:\/\/github.com\/coreos\/etcd."},{"key":"e_1_3_2_1_4_1","unstructured":"A golang ebook intro how to build a web with golang. https:\/\/github.com\/astaxie\/build-web-application-with-golang.  A golang ebook intro how to build a web with golang. https:\/\/github.com\/astaxie\/build-web-application-with-golang."},{"key":"e_1_3_2_1_5_1","unstructured":"A high performance open-source universal RPC framework. https:\/\/github.com\/grpc\/grpc-go.  A high performance open-source universal RPC framework. https:\/\/github.com\/grpc\/grpc-go."},{"key":"e_1_3_2_1_6_1","unstructured":"A simple zero-config tool to make locally trusted development certificates with any names you'd like. https:\/\/github.com\/FiloSottile\/mkcert.  A simple zero-config tool to make locally trusted development certificates with any names you'd like. https:\/\/github.com\/FiloSottile\/mkcert."},{"key":"e_1_3_2_1_7_1","unstructured":"Actor model. https:\/\/en.wikipedia.org\/wiki\/Actor_model#Contrast_with_other_models_of_message-passing_concurrency.  Actor model. https:\/\/en.wikipedia.org\/wiki\/Actor_model#Contrast_with_other_models_of_message-passing_concurrency."},{"key":"e_1_3_2_1_8_1","unstructured":"CockroachDB is a cloud-native SQL database for building global scalable cloud services that survive disasters. https:\/\/github.com\/cockroachdb\/cockroach.  CockroachDB is a cloud-native SQL database for building global scalable cloud services that survive disasters. https:\/\/github.com\/cockroachdb\/cockroach."},{"key":"e_1_3_2_1_9_1","unstructured":"Command vet. URL: https:\/\/golang.org\/cmd\/vet\/.  Command vet. URL: https:\/\/golang.org\/cmd\/vet\/."},{"key":"e_1_3_2_1_10_1","unstructured":"Communicating sequential processes. https:\/\/en.wikipedia.org\/wiki\/Communicating_sequential_processes.  Communicating sequential processes. https:\/\/en.wikipedia.org\/wiki\/Communicating_sequential_processes."},{"key":"e_1_3_2_1_11_1","unstructured":"Data Race Detector. https:\/\/golang.org\/doc\/articles\/race_detector.html.  Data Race Detector. https:\/\/golang.org\/doc\/articles\/race_detector.html."},{"key":"e_1_3_2_1_12_1","unstructured":"Docker - Build Ship and Run Any App Anywhere. https:\/\/www.docker.com\/.  Docker - Build Ship and Run Any App Anywhere. https:\/\/www.docker.com\/."},{"key":"e_1_3_2_1_13_1","unstructured":"Effective Go. https:\/\/golang.org\/doc\/effective_go.html.  Effective Go. https:\/\/golang.org\/doc\/effective_go.html."},{"key":"e_1_3_2_1_14_1","unstructured":"Go (programming language). https:\/\/en.wikipedia.org\/wiki\/Go_(programming_language).  Go (programming language). https:\/\/en.wikipedia.org\/wiki\/Go_(programming_language)."},{"key":"e_1_3_2_1_15_1","unstructured":"Mars Pathfinder. URL: https:\/\/en.wikipedia.org\/wiki\/Mars_Pathfinder.  Mars Pathfinder. URL: https:\/\/en.wikipedia.org\/wiki\/Mars_Pathfinder."},{"key":"e_1_3_2_1_16_1","unstructured":"Official Go implementation of the Ethereum protocol. https:\/\/github.com\/ethereum\/go-ethereum.  Official Go implementation of the Ethereum protocol. https:\/\/github.com\/ethereum\/go-ethereum."},{"key":"e_1_3_2_1_17_1","unstructured":"Package AST. https:\/\/golang.org\/pkg\/go\/ast\/.  Package AST. https:\/\/golang.org\/pkg\/go\/ast\/."},{"key":"e_1_3_2_1_18_1","unstructured":"Package CHA. https:\/\/godoc.org\/golang.org\/x\/tools\/go\/callgraph\/cha.  Package CHA. https:\/\/godoc.org\/golang.org\/x\/tools\/go\/callgraph\/cha."},{"key":"e_1_3_2_1_19_1","unstructured":"Package Deadlock. https:\/\/godoc.org\/github.com\/sasha-s\/go-deadlock.  Package Deadlock. https:\/\/godoc.org\/github.com\/sasha-s\/go-deadlock."},{"key":"e_1_3_2_1_20_1","unstructured":"Package Pointer. https:\/\/godoc.org\/golang.org\/x\/tools\/go\/pointer.  Package Pointer. https:\/\/godoc.org\/golang.org\/x\/tools\/go\/pointer."},{"key":"e_1_3_2_1_21_1","unstructured":"Package SSA. https:\/\/godoc.org\/golang.org\/x\/tools\/go\/ssa.  Package SSA. https:\/\/godoc.org\/golang.org\/x\/tools\/go\/ssa."},{"key":"e_1_3_2_1_22_1","unstructured":"Production-Grade Container Orchestration. https:\/\/kubernetes.io\/.  Production-Grade Container Orchestration. https:\/\/kubernetes.io\/."},{"key":"e_1_3_2_1_23_1","unstructured":"Staticcheck ?- a collection of static analysis tools for working with Go code. URL: https:\/\/github.com\/dominikh\/go-tools.  Staticcheck ?- a collection of static analysis tools for working with Go code. URL: https:\/\/github.com\/dominikh\/go-tools."},{"key":"e_1_3_2_1_24_1","unstructured":"The Go Blog: Share Memory By Communicating. https:\/\/blog.golang.org\/share-memory-by-communicating.  The Go Blog: Share Memory By Communicating. https:\/\/blog.golang.org\/share-memory-by-communicating."},{"key":"e_1_3_2_1_25_1","unstructured":"Sameer Ajmani. Advanced Go Concurrency Patterns. https:\/\/talks.golang.org\/2013\/advconc.slide.  Sameer Ajmani. Advanced Go Concurrency Patterns. https:\/\/talks.golang.org\/2013\/advconc.slide."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.5555\/2337223.2337294"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2568225.2568312"},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/1755913.1755945"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/378993.379002"},{"key":"e_1_3_2_1_30_1","unstructured":"Randy Coulman. Debugging Race Conditions and Deadlocks. URL: https:\/\/randycoulman.com\/blog\/2013\/03\/05\/debugging-race-conditions-and-deadlocks\/.  Randy Coulman. Debugging Race Conditions and Deadlocks. URL: https:\/\/randycoulman.com\/blog\/2013\/03\/05\/debugging-race-conditions-and-deadlocks\/."},{"key":"e_1_3_2_1_31_1","unstructured":"Russ Cox. Bell Labs and CSP Threads. http:\/\/swtch.com\/~rsc\/thread\/.  Russ Cox. Bell Labs and CSP Threads. http:\/\/swtch.com\/~rsc\/thread\/."},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/2451116.2451152"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-78800-3_24"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2019.8668036"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.5555\/1924943.1924954"},{"key":"e_1_3_2_1_36_1","volume-title":"Static deadlock prevention in dynamically configured communication networks","author":"F\u00e4hndrich Manuel","year":"2008","unstructured":"Manuel F\u00e4hndrich , Sriram Rajamani , and Jakob Rehof . Static deadlock prevention in dynamically configured communication networks . 2008 . Manuel F\u00e4hndrich, Sriram Rajamani, and Jakob Rehof. Static deadlock prevention in dynamically configured communication networks. 2008."},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/964001.964023"},{"key":"e_1_3_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/3095075"},{"key":"e_1_3_2_1_39_1","volume-title":"Proceedings of the 34th European Conference on Object-Oriented Programming (ECOOP '20)","author":"Gabet Julia","year":"2020","unstructured":"Julia Gabet and Nobuko Yoshida . Static race detection and mutex safety and liveness for go programs . In Proceedings of the 34th European Conference on Object-Oriented Programming (ECOOP '20) , Berlin, Germany , 2020 . Julia Gabet and Nobuko Yoshida. Static race detection and mutex safety and liveness for go programs. In Proceedings of the 34th European Conference on Object-Oriented Programming (ECOOP '20), Berlin, Germany, 2020."},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1950365.1950394"},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542275.1542319"},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC.2012.79"},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/2737924.2737975"},{"key":"e_1_3_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594315"},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/2983990.2984024"},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/2001420.2001438"},{"key":"e_1_3_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/2384616.2384670"},{"key":"e_1_3_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462167"},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2015.108"},{"key":"e_1_3_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/2254064.2254075"},{"key":"e_1_3_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/1993498.1993544"},{"key":"e_1_3_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.5555\/2387880.2387902"},{"key":"e_1_3_2_1_53_1","volume-title":"Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI '08)","author":"Jula Horatiu","year":"2008","unstructured":"Horatiu Jula , Daniel Tralamazza , Cristian Zamfir , and George Candea . Deadlock immunity : Enabling systems to defend against deadlocks . In Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI '08) , San Diego, California , 2008 . Horatiu Jula, Daniel Tralamazza, Cristian Zamfir, and George Candea. Deadlock immunity: Enabling systems to defend against deadlocks. In Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI '08), San Diego, California, 2008."},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/1595696.1595701"},{"key":"e_1_3_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/2150976.2150997"},{"key":"e_1_3_2_1_56_1","volume-title":"Proceedings of the 24th ACM symposium on operating systems principles (SOSP '2013)","author":"Kasikci Baris","year":"2013","unstructured":"Baris Kasikci , Cristian Zamfir , and George Candea . Racemob : crowdsourced data race detection . In Proceedings of the 24th ACM symposium on operating systems principles (SOSP '2013) , 2013 . Baris Kasikci, Cristian Zamfir, and George Candea. Racemob: crowdsourced data race detection. In Proceedings of the 24th ACM symposium on operating systems principles (SOSP '2013), 2013."},{"key":"e_1_3_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1145\/2771783.2771798"},{"key":"e_1_3_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1145\/2970276.2970309"},{"key":"e_1_3_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.1145\/3009837.3009847"},{"key":"e_1_3_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/3180155.3180157"},{"key":"e_1_3_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/3314221.3314620"},{"key":"e_1_3_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341301.3359638"},{"key":"e_1_3_2_1_63_1","doi-asserted-by":"publisher","DOI":"10.1145\/1081706.1081755"},{"key":"e_1_3_2_1_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/2950290.2950309"},{"key":"e_1_3_2_1_65_1","doi-asserted-by":"publisher","DOI":"10.1145\/1168857.1168864"},{"key":"e_1_3_2_1_66_1","doi-asserted-by":"publisher","DOI":"10.1145\/1669112.1669181"},{"key":"e_1_3_2_1_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/1190216.1190265"},{"key":"e_1_3_2_1_68_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133981.1134018"},{"key":"e_1_3_2_1_69_1","volume-title":"Are concurrent programs that are easier to write also easier to check?","author":"Namjoshi Kedar S.","year":"2008","unstructured":"Kedar S. Namjoshi . Are concurrent programs that are easier to write also easier to check? 2008 . Kedar S. Namjoshi. Are concurrent programs that are easier to write also easier to check? 2008."},{"key":"e_1_3_2_1_70_1","doi-asserted-by":"publisher","DOI":"10.1145\/2892208.2892232"},{"key":"e_1_3_2_1_71_1","doi-asserted-by":"publisher","DOI":"10.1145\/1508244.1508249"},{"key":"e_1_3_2_1_72_1","unstructured":"Keval Patel. Why should you learn Go? https:\/\/medium.com\/@kevalpatel2106\/why-should-you-learn-go-f607681fad65.  Keval Patel. Why should you learn Go? https:\/\/medium.com\/@kevalpatel2106\/why-should-you-learn-go-f607681fad65."},{"key":"e_1_3_2_1_73_1","unstructured":"Rob Pike. Go Concurrency Patterns. https:\/\/talks.golang.org\/2012\/concurrency.slide.  Rob Pike. Go Concurrency Patterns. https:\/\/talks.golang.org\/2012\/concurrency.slide."},{"key":"e_1_3_2_1_74_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133981.1134019"},{"key":"e_1_3_2_1_75_1","volume-title":"Proceedings of the 19th ACM symposium on Operating systems principles (SOSP '03)","author":"Dawson","year":"2003","unstructured":"Dawson R. Engler and Ken Ashcraft. Racerx: Effective, static detection of race conditions and deadlocks . In Proceedings of the 19th ACM symposium on Operating systems principles (SOSP '03) , Bolton Landing, New York, USA , October 2003 . Dawson R. Engler and Ken Ashcraft. Racerx: Effective, static detection of race conditions and deadlocks. In Proceedings of the 19th ACM symposium on Operating systems principles (SOSP '03), Bolton Landing, New York, USA, October 2003."},{"key":"e_1_3_2_1_76_1","doi-asserted-by":"publisher","DOI":"10.1145\/2483760.2483765"},{"key":"e_1_3_2_1_77_1","doi-asserted-by":"publisher","DOI":"10.1145\/2635868.2635922"},{"key":"e_1_3_2_1_78_1","unstructured":"Paul Rubens. Why Software Testing Can't Save You From IT Disasters. URL: https:\/\/www.cio.com\/article\/2378046\/net\/why-software-testing-can-t-save-you-from-it-disasters.html.  Paul Rubens. Why Software Testing Can't Save You From IT Disasters. URL: https:\/\/www.cio.com\/article\/2378046\/net\/why-software-testing-can-t-save-you-from-it-disasters.html."},{"key":"e_1_3_2_1_79_1","doi-asserted-by":"publisher","DOI":"10.1145\/268998.266641"},{"key":"e_1_3_2_1_80_1","doi-asserted-by":"publisher","DOI":"10.1145\/3314221.3322484"},{"key":"e_1_3_2_1_81_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375581.1375584"},{"key":"e_1_3_2_1_82_1","doi-asserted-by":"publisher","DOI":"10.1109\/APSEC.2008.68"},{"key":"e_1_3_2_1_83_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-33296-8_15"},{"key":"e_1_3_2_1_84_1","doi-asserted-by":"publisher","DOI":"10.1145\/1882291.1882300"},{"key":"e_1_3_2_1_85_1","unstructured":"Minh-Phuc Tran. Use Go Channels as Promises and Async\/Await. https:\/\/levelup.gitconnected.com\/use-go-channels-as-promises-and-async-await-ee62d93078ec\/.  Minh-Phuc Tran. Use Go Channels as Promises and Async\/Await. https:\/\/levelup.gitconnected.com\/use-go-channels-as-promises-and-async-await-ee62d93078ec\/."},{"key":"e_1_3_2_1_86_1","unstructured":"Deepti Tripathi. Why Is Golang so Popular These Days? https:\/\/dzone.com\/articles\/why-is-golang-so-popular-these-days-here-are-your.  Deepti Tripathi. Why Is Golang so Popular These Days? https:\/\/dzone.com\/articles\/why-is-golang-so-popular-these-days-here-are-your."},{"key":"e_1_3_2_1_87_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304069"},{"key":"e_1_3_2_1_88_1","doi-asserted-by":"publisher","DOI":"10.1145\/1345206.1345258"},{"key":"e_1_3_2_1_89_1","volume-title":"Proceedings of the the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering (FSE '07)","author":"Voung Jan Wen","year":"2007","unstructured":"Jan Wen Voung , Ranjit Jhala , and Sorin Lerner . Relay : Static race detection on millions of lines of code . In Proceedings of the the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering (FSE '07) , New York, NY, USA , 2007 . Jan Wen Voung, Ranjit Jhala, and Sorin Lerner. Relay: Static race detection on millions of lines of code. In Proceedings of the the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering (FSE '07), New York, NY, USA, 2007."},{"key":"e_1_3_2_1_90_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-12002-2_27"},{"key":"e_1_3_2_1_91_1","volume-title":"Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI '08)","author":"Wang Yin","year":"2008","unstructured":"Yin Wang , Terence Kelly , Manjunath Kudlur , St\\'ephane Lafortune, and Scott Mahlke . Gadara : Dynamic deadlock avoidance for multithreaded programs . In Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI '08) , Berkeley, CA, USA , 2008 . Yin Wang, Terence Kelly, Manjunath Kudlur, St\\'ephane Lafortune, and Scott Mahlke. Gadara: Dynamic deadlock avoidance for multithreaded programs. In Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI '08), Berkeley, CA, USA, 2008."},{"key":"e_1_3_2_1_92_1","doi-asserted-by":"publisher","DOI":"10.1145\/1480881.1480913"},{"key":"e_1_3_2_1_93_1","doi-asserted-by":"publisher","DOI":"10.1145\/1555754.1555796"},{"key":"e_1_3_2_1_94_1","doi-asserted-by":"publisher","DOI":"10.1145\/1095810.1095832"},{"key":"e_1_3_2_1_95_1","doi-asserted-by":"publisher","DOI":"10.1145\/3037697.3037708"},{"key":"e_1_3_2_1_96_1","doi-asserted-by":"publisher","DOI":"10.1145\/1736020.1736041"},{"key":"e_1_3_2_1_97_1","doi-asserted-by":"publisher","DOI":"10.5555\/3155562.3155654"}],"event":{"name":"ASPLOS '21: 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems","location":"Virtual USA","acronym":"ASPLOS '21","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3445814.3446756","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/abs\/10.1145\/3445814.3446756","content-type":"text\/html","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3445814.3446756","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3445814.3446756","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T21:24:33Z","timestamp":1750195473000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3445814.3446756"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,4,17]]},"references-count":97,"alternative-id":["10.1145\/3445814.3446756","10.1145\/3445814"],"URL":"https:\/\/doi.org\/10.1145\/3445814.3446756","relation":{},"subject":[],"published":{"date-parts":[[2021,4,17]]},"assertion":[{"value":"2021-04-17","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}