{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:24:29Z","timestamp":1750220669614,"version":"3.41.0"},"reference-count":88,"publisher":"Association for Computing Machinery (ACM)","issue":"OOPSLA","license":[{"start":{"date-parts":[[2020,11,13]],"date-time":"2020-11-13T00:00:00Z","timestamp":1605225600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"name":"NSF","award":["1703931"],"award-info":[{"award-number":["1703931"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Program. Lang."],"published-print":{"date-parts":[[2020,11,13]]},"abstract":"<jats:p>\n            Garbage collection (GC) support for unmanaged languages can reduce programming burden in reasoning about liveness of dynamic objects. It also avoids temporal memory safety violations and memory leaks.\n            <jats:italic>Sound<\/jats:italic>\n            GC for weakly-typed languages such as C\/C++, however, remains an unsolved problem. Current value-based GC solutions examine values of memory locations to discover the pointers, and the objects they point to. The approach is inherently unsound in the presence of arbitrary type casts and pointer manipulations, which are legal in C\/C++. Such language features are regularly used, especially in low-level systems code.\n          <\/jats:p>\n          <jats:p>In this paper, we propose Dynamic Pointer Provenance Tracking to realize sound GC. We observe that pointers cannot be created out-of-thin-air, and they must have provenance to at least one valid allocation. Therefore, by tracking pointer provenance from the source (e.g., malloc) through both explicit data-flow and implicit control-flow, our GC has sound and precise information to compute the set of all reachable objects at any program state. We discuss several static analysis optimizations, that can be employed during compilation aided with profiling, to significantly reduce the overhead of dynamic provenance tracking from nearly 8\u00d7 to 16% for well-behaved programs that adhere to the C standards. Pointer provenance based sound GC invocation is also 13% faster and reclaims 6% more memory on average, compared to an unsound value-based GC.<\/jats:p>","DOI":"10.1145\/3428244","type":"journal-article","created":{"date-parts":[[2020,11,24]],"date-time":"2020-11-24T23:40:14Z","timestamp":1606261214000},"page":"1-28","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["Sound garbage collection for C using pointer provenance"],"prefix":"10.1145","volume":"4","author":[{"given":"Subarno","family":"Banerjee","sequence":"first","affiliation":[{"name":"University of Michigan, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"David","family":"Devecsery","sequence":"additional","affiliation":[{"name":"Georgia Institute of Technology, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Peter M.","family":"Chen","sequence":"additional","affiliation":[{"name":"University of Michigan, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Satish","family":"Narayanasamy","sequence":"additional","affiliation":[{"name":"University of Michigan, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2020,11,13]]},"reference":[{"key":"e_1_2_2_1_1","unstructured":". The Tile38 geolocation information systems. http:\/\/tile38.com.  . The Tile38 geolocation information systems. http:\/\/tile38.com."},{"key":"e_1_2_2_2_1","unstructured":"2004. A Memory-Eficient Doubly Linked List. https:\/\/www.linuxjournal.com\/article\/6828.  2004. A Memory-Eficient Doubly Linked List. https:\/\/www.linuxjournal.com\/article\/6828."},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/325164.325100"},{"key":"e_1_2_2_4_1","volume-title":"Ullman","author":"Aho Alfred V.","year":"2006","unstructured":"Alfred V. Aho , Monica S. Lam , Ravi Sethi , and Jefrey D . Ullman . 2006 . Compilers : Principles, Techniques, and Tools (2Nd Edition). Addison-Wesley Longman Publishing Co. , Inc., Boston, MA, USA. Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jefrey D. Ullman. 2006. Compilers: Principles, Techniques, and Tools (2Nd Edition). Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA."},{"key":"e_1_2_2_5_1","first-page":"51","volume-title":"18th USENIX Security Symposium","author":"Akritidis Periklis","year":"2009","unstructured":"Periklis Akritidis , Manuel Costa , Miguel Castro , and Steven Hand . 2009 . Baggy Bounds Checking: An Eficient and Backwards-Compatible Defense against Out-of-Bounds Errors . In 18th USENIX Security Symposium , Montreal, Canada , August 10-14, 2009, Proceedings, Fabian Monrose (Ed.). USENIX Association, 51 - 66 . http:\/\/www.usenix.org\/events\/sec09\/ tech\/full_papers\/akritidis.pdf Periklis Akritidis, Manuel Costa, Miguel Castro, and Steven Hand. 2009. Baggy Bounds Checking: An Eficient and Backwards-Compatible Defense against Out-of-Bounds Errors. In 18th USENIX Security Symposium, Montreal, Canada, August 10-14, 2009, Proceedings, Fabian Monrose (Ed.). USENIX Association, 51-66. http:\/\/www.usenix.org\/events\/sec09\/ tech\/full_papers\/akritidis.pdf"},{"key":"e_1_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/73560.73561"},{"key":"e_1_2_2_7_1","unstructured":"Apple. 2013. Transitioning to ARC release notes. https:\/\/developer.apple.com\/library\/archive\/releasenotes\/ObjectiveC\/RNTransitioningToARC.  Apple. 2013. Transitioning to ARC release notes. https:\/\/developer.apple.com\/library\/archive\/releasenotes\/ObjectiveC\/RNTransitioningToARC."},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1554339.1554353"},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/178243.178446"},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/378795.378819"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-45337-7_12"},{"key":"e_1_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/872736.806932"},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-71229-9_5"},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2019.00043"},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1317224.1317225"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133981.1134000"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375581.1375586"},{"key":"e_1_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/349299.349342"},{"key":"e_1_2_2_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/155090.155109"},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/231379.231394"},{"key":"e_1_2_2_22_1","article-title":"A Proposal for Garbage-Collector-Safe C Compilation","volume":"4","author":"Boehm Hans-Juergen","year":"1992","unstructured":"Hans-Juergen Boehm and David Chase . 1992 . A Proposal for Garbage-Collector-Safe C Compilation . The Journal of C Language Translation 4 , 2 ( December 1992 ), 126-141. https:\/\/www.hboehm.info\/gc\/papers\/boecha.ps.gz Hans-Juergen Boehm and David Chase. 1992. A Proposal for Garbage-Collector-Safe C Compilation. The Journal of C Language Translation 4, 2 ( December 1992 ), 126-141. https:\/\/www.hboehm.info\/gc\/papers\/boecha.ps.gz","journal-title":"The Journal of C Language Translation"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/113445.113459"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/989393.989442"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1168857.1168866"},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-36579-6_7"},{"key":"e_1_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2338965.2336769"},{"key":"e_1_2_2_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/2896499"},{"key":"e_1_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2694344.2694367"},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375581.1375620"},{"key":"e_1_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1273463.1273490"},{"key":"e_1_2_2_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1806799.1806874"},{"key":"e_1_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/356850.356854"},{"key":"e_1_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/367487.367501"},{"key":"e_1_2_2_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/360336.360345"},{"key":"e_1_2_2_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/3173162.3177153"},{"key":"e_1_2_2_37_1","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2006.31"},{"key":"e_1_2_2_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/780732.780743"},{"key":"e_1_2_2_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/773039.773040"},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/277631.277637"},{"key":"e_1_2_2_42_1","first-page":"85","volume-title":"Proceedings of the C++ Conference. Washington, D.C., USA","author":"Daniel","year":"1991","unstructured":"Daniel R. Edelson and Ira Pohl. 1991. A Copying Collector for C++ . In Proceedings of the C++ Conference. Washington, D.C., USA , April 1991 . USENIX Association , 85 - 102 . Daniel R. Edelson and Ira Pohl. 1991. A Copying Collector for C++. In Proceedings of the C++ Conference. Washington, D.C., USA, April 1991. USENIX Association, 85-102."},{"key":"e_1_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/1988915.1988922"},{"key":"e_1_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1109\/SecDev.2018.00015"},{"key":"e_1_2_2_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462165"},{"key":"e_1_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/509593.509641"},{"key":"e_1_2_2_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/231379.231389"},{"key":"e_1_2_2_48_1","volume-title":"In Proc. of the","author":"Hastings Reed","year":"1991","unstructured":"Reed Hastings and Bob Joyce . 1991 . Purify: Fast detection of memory leaks and access errors . In In Proc. of the Winter 1992 USENIX Conference. 125-138. Reed Hastings and Bob Joyce. 1991. Purify: Fast detection of memory leaks and access errors. In In Proc. of the Winter 1992 USENIX Conference. 125-138."},{"key":"e_1_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/1024393.1024412"},{"key":"e_1_2_2_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781150"},{"key":"e_1_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/773039.512449"},{"key":"e_1_2_2_52_1","volume-title":"Proceedings of The ILPS\u00e2\u0102\u017995 Postconference Workshop on Sequential Implementation Technologies for Logic Programming Languages","author":"Henderson Fergus","year":"1995","unstructured":"Fergus Henderson , Zoltan Somogyi , and Thomas Conway . 1995 . Compiling logic programs to C using GNU C as a portable assembler . In Proceedings of The ILPS\u00e2\u0102\u017995 Postconference Workshop on Sequential Implementation Technologies for Logic Programming Languages , Portland, Oregon. Fergus Henderson, Zoltan Somogyi, and Thomas Conway. 1995. Compiling logic programs to C using GNU C as a portable assembler. In Proceedings of The ILPS\u00e2\u0102\u017995 Postconference Workshop on Sequential Implementation Technologies for Logic Programming Languages, Portland, Oregon."},{"key":"e_1_2_2_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/1186736.1186737"},{"key":"e_1_2_2_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/586088.586089"},{"key":"e_1_2_2_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133956.1133963"},{"key":"e_1_2_2_57_1","first-page":"275","volume-title":"Proceedings of the General Track: 2002 USENIX Annual Technical Conference","author":"Jim Trevor","year":"2002","unstructured":"Trevor Jim , J. Gregory Morrisett , Dan Grossman , Michael W. Hicks , James Cheney , and Yanling Wang . 2002 . Cyclone: A Safe Dialect of C . In Proceedings of the General Track: 2002 USENIX Annual Technical Conference , June 10-15, 2002, Monterey, California, USA, Carla Schlatter Ellis (Ed.). USENIX , 275 - 288 . http:\/\/www.usenix.org\/publications\/library\/proceedings\/ usenix02\/jim.html Trevor Jim, J. Gregory Morrisett, Dan Grossman, Michael W. Hicks, James Cheney, and Yanling Wang. 2002. Cyclone: A Safe Dialect of C. In Proceedings of the General Track: 2002 USENIX Annual Technical Conference, June 10-15, 2002, Monterey, California, USA, Carla Schlatter Ellis (Ed.). USENIX, 275-288. http:\/\/www.usenix.org\/publications\/library\/proceedings\/ usenix02\/jim.html"},{"key":"e_1_2_2_58_1","volume-title":"Proceedings of the Third International Workshop on Automated Debugging, AADEBUG 1997","author":"Richard W.","year":"1997","unstructured":"Richard W. M. Jones and Paul H. J. Kelly. 1997. Backwards-Compatible Bounds Checking for Arrays and Pointers in C Programs . In Proceedings of the Third International Workshop on Automated Debugging, AADEBUG 1997 , Link\u00f6ping, Sweden , May 26-27, 1997 (Link\u00f6ping Electronic Articles in Computer and Information Science, Vol. 2 ), Mariam Kamkar (Ed.). Link\u00f6ping University Electronic Press, 13-26. http:\/\/www.ep.liu.se\/ecp\/article.asp?issue=001&article= 002 Richard W. M. Jones and Paul H. J. Kelly. 1997. Backwards-Compatible Bounds Checking for Arrays and Pointers in C Programs. In Proceedings of the Third International Workshop on Automated Debugging, AADEBUG 1997, Link\u00f6ping, Sweden, May 26-27, 1997 (Link\u00f6ping Electronic Articles in Computer and Information Science, Vol. 2 ), Mariam Kamkar (Ed.). Link\u00f6ping University Electronic Press, 13-26. http:\/\/www.ep.liu.se\/ecp\/article.asp?issue=001&article= 002"},{"key":"e_1_2_2_59_1","doi-asserted-by":"publisher","DOI":"10.1007\/10704567_1"},{"key":"e_1_2_2_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/1190216.1190224"},{"key":"e_1_2_2_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/1176760.1176767"},{"key":"e_1_2_2_62_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2004.1281665"},{"key":"e_1_2_2_63_1","volume-title":"Proceedings of the Network and Distributed System Security Symposium, NDSS 2011","author":"Lee JongHyup","year":"2011","unstructured":"JongHyup Lee , Thanassis Avgerinos , and David Brumley . 2011 . TIE: Principled Reverse Engineering of Types in Binary Programs . In Proceedings of the Network and Distributed System Security Symposium, NDSS 2011 , San Diego, California, USA, 6th February-9th February 2011. The Internet Society. https:\/\/www.ndss-symposium.org\/ndss2011\/tie-principledreverse-engineering-of-types-in-binary-programs JongHyup Lee, Thanassis Avgerinos, and David Brumley. 2011. TIE: Principled Reverse Engineering of Types in Binary Programs. In Proceedings of the Network and Distributed System Security Symposium, NDSS 2011, San Diego, California, USA, 6th February-9th February 2011. The Internet Society. https:\/\/www.ndss-symposium.org\/ndss2011\/tie-principledreverse-engineering-of-types-in-binary-programs"},{"key":"e_1_2_2_64_1","doi-asserted-by":"publisher","DOI":"10.1016\/0020-0190(92)90088-D"},{"key":"e_1_2_2_65_1","doi-asserted-by":"publisher","DOI":"10.1145\/3290380"},{"key":"e_1_2_2_66_1","doi-asserted-by":"publisher","DOI":"10.1145\/2908080.2908081"},{"key":"e_1_2_2_67_1","unstructured":"Microsoft. 2004. Managed Extensions for C++. https:\/\/docs.microsoft.com\/en-us\/cpp\/build\/reference\/microsoft-extensionsto-c-and-cpp.  Microsoft. 2004. Managed Extensions for C++. https:\/\/docs.microsoft.com\/en-us\/cpp\/build\/reference\/microsoft-extensionsto-c-and-cpp."},{"key":"e_1_2_2_68_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542504"},{"key":"e_1_2_2_69_1","doi-asserted-by":"publisher","DOI":"10.1145\/1806651.1806657"},{"key":"e_1_2_2_70_1","doi-asserted-by":"publisher","DOI":"10.1145\/503272.503286"},{"key":"e_1_2_2_71_1","volume-title":"Proceedings of the Network and Distributed System Security Symposium, NDSS 2005","author":"Newsome James","year":"2005","unstructured":"James Newsome and Dawn Xiaodong Song . 2005 . Dynamic Taint Analysis for Automatic Detection, Analysis, and SignatureGeneration of Exploits on Commodity Software . In Proceedings of the Network and Distributed System Security Symposium, NDSS 2005 , San Diego, California, USA. The Internet Society. https:\/\/www.ndss-symposium.org\/ndss 2005\/ dynamic-taint-analysis-automatic-detection-analysis-and-signaturegeneration-exploits-commodity\/ James Newsome and Dawn Xiaodong Song. 2005. Dynamic Taint Analysis for Automatic Detection, Analysis, and SignatureGeneration of Exploits on Commodity Software. In Proceedings of the Network and Distributed System Security Symposium, NDSS 2005, San Diego, California, USA. The Internet Society. https:\/\/www.ndss-symposium.org\/ndss2005\/ dynamic-taint-analysis-automatic-detection-analysis-and-signaturegeneration-exploits-commodity\/"},{"key":"e_1_2_2_72_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542521"},{"key":"e_1_2_2_73_1","doi-asserted-by":"publisher","DOI":"10.1145\/3224423"},{"key":"e_1_2_2_74_1","volume-title":"Proceedings of UK Joint Framework for Information Technology (JFIT) Technical Conference, Keele. 249-257","author":"Peyton Jones Simon L.","year":"1993","unstructured":"Simon L. Peyton Jones , Cordy Hall , Kevin Hammond , Will Partain , and Phil Wadler . 1993 . The Glasgow Haskell Compiler: a technical overview . In Proceedings of UK Joint Framework for Information Technology (JFIT) Technical Conference, Keele. 249-257 . Simon L. Peyton Jones, Cordy Hall, Kevin Hammond, Will Partain, and Phil Wadler. 1993. The Glasgow Haskell Compiler: a technical overview. In Proceedings of UK Joint Framework for Information Technology (JFIT) Technical Conference, Keele. 249-257."},{"key":"e_1_2_2_75_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542431.1542438"},{"key":"e_1_2_2_76_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.2406"},{"key":"e_1_2_2_77_1","volume-title":"Proceedings of the Network and Distributed System Security Symposium, NDSS 2004","author":"Ruwase Olatunji","year":"2004","unstructured":"Olatunji Ruwase and Monica S. Lam . 2004. A Practical Dynamic Bufer Overflow Detector . In Proceedings of the Network and Distributed System Security Symposium, NDSS 2004 , San Diego, California, USA. The Internet Society. https:\/\/www.ndsssymposium.org\/ndss 2004 \/practical-dynamic-bufer-overflow-detector\/ Olatunji Ruwase and Monica S. Lam. 2004. A Practical Dynamic Bufer Overflow Detector. In Proceedings of the Network and Distributed System Security Symposium, NDSS 2004, San Diego, California, USA. The Internet Society. https:\/\/www.ndsssymposium.org\/ndss2004\/practical-dynamic-bufer-overflow-detector\/"},{"key":"e_1_2_2_78_1","doi-asserted-by":"publisher","DOI":"10.1109\/JSAC.2002.806121"},{"key":"e_1_2_2_80_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2010.26"},{"key":"e_1_2_2_81_1","doi-asserted-by":"publisher","DOI":"10.1145\/2258996.2259008"},{"key":"e_1_2_2_82_1","doi-asserted-by":"publisher","DOI":"10.1145\/2660193.2660198"},{"key":"e_1_2_2_83_1","doi-asserted-by":"publisher","DOI":"10.1145\/2509136.2509527"},{"key":"e_1_2_2_84_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.2105"},{"key":"e_1_2_2_85_1","doi-asserted-by":"publisher","DOI":"10.1145\/3828.3835"},{"key":"e_1_2_2_86_1","doi-asserted-by":"publisher","DOI":"10.1145\/286860.286868"},{"key":"e_1_2_2_87_1","doi-asserted-by":"publisher","DOI":"10.1145\/165180.165196"},{"key":"e_1_2_2_88_1","doi-asserted-by":"publisher","DOI":"10.1145\/151333.151343"},{"key":"e_1_2_2_89_1","doi-asserted-by":"publisher","DOI":"10.1145\/800020.808261"},{"key":"e_1_2_2_90_1","doi-asserted-by":"publisher","DOI":"10.1145\/3192366.3192376"},{"key":"e_1_2_2_91_1","doi-asserted-by":"publisher","DOI":"10.1145\/1993498.1993530"},{"key":"e_1_2_2_93_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304017"}],"container-title":["Proceedings of the ACM on Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3428244","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3428244","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3428244","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:02:57Z","timestamp":1750197777000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3428244"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,11,13]]},"references-count":88,"journal-issue":{"issue":"OOPSLA","published-print":{"date-parts":[[2020,11,13]]}},"alternative-id":["10.1145\/3428244"],"URL":"https:\/\/doi.org\/10.1145\/3428244","relation":{},"ISSN":["2475-1421"],"issn-type":[{"type":"electronic","value":"2475-1421"}],"subject":[],"published":{"date-parts":[[2020,11,13]]},"assertion":[{"value":"2020-11-13","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}