{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:48:08Z","timestamp":1772164088860,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":44,"publisher":"ACM","license":[{"start":{"date-parts":[[2017,6,14]],"date-time":"2017-06-14T00:00:00Z","timestamp":1497398400000},"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":[[2017,6,14]]},"DOI":"10.1145\/3062341.3062376","type":"proceedings-article","created":{"date-parts":[[2017,6,14]],"date-time":"2017-06-14T10:01:04Z","timestamp":1497434464000},"page":"233-247","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":9,"title":["Simple, fast, and safe manual memory management"],"prefix":"10.1145","author":[{"given":"Piyus","family":"Kedia","sequence":"first","affiliation":[{"name":"Microsoft Research, India"}]},{"given":"Manuel","family":"Costa","sequence":"additional","affiliation":[{"name":"Microsoft Research, UK"}]},{"given":"Matthew","family":"Parkinson","sequence":"additional","affiliation":[{"name":"Microsoft Research, UK"}]},{"given":"Kapil","family":"Vaswani","sequence":"additional","affiliation":[{"name":"Microsoft Research, UK"}]},{"given":"Dimitrios","family":"Vytiniotis","sequence":"additional","affiliation":[{"name":"Microsoft Research, UK"}]},{"given":"Aaron","family":"Blankstein","sequence":"additional","affiliation":[{"name":"Princeton University, USA"}]}],"member":"320","published-online":{"date-parts":[[2017,6,14]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"Fundamentals of garbage collection.NET native and compilation.  Fundamentals of garbage collection.NET native and compilation."},{"key":"e_1_3_2_1_2_1","unstructured":"Electric fence malloc debugger. http:\/\/elinux.org\/ Electric_Fence.  Electric fence malloc debugger. http:\/\/elinux.org\/ Electric_Fence."},{"key":"e_1_3_2_1_3_1","unstructured":"How to use pageheap utility to detect memory errors. https:\/\/support.microsoft.com\/en-us\/ kb\/264471.  How to use pageheap utility to detect memory errors. https:\/\/support.microsoft.com\/en-us\/ kb\/264471."},{"key":"e_1_3_2_1_4_1","unstructured":"Rust programming language. https:\/\/www. rust-lang.org.  Rust programming language. https:\/\/www. rust-lang.org."},{"key":"e_1_3_2_1_5_1","first-page":"192","volume-title":"USENIX Security Symposium","author":"Akritidis P.","year":"2010","unstructured":"P. Akritidis . Cling : A memory allocator to mitigate dangling pointers . In USENIX Security Symposium , pages 177\u2013 192 , 2010 . P. Akritidis. Cling: A memory allocator to mitigate dangling pointers. In USENIX Security Symposium, pages 177\u2013192, 2010."},{"key":"e_1_3_2_1_6_1","volume-title":"OTM Workshops","author":"Bacon D. F.","year":"2003","unstructured":"D. F. Bacon , P. Cheng , and V. Rajan . The metronome: A simpler approach to garbage collection in real-time systems. In In 4 https:\/\/github.com\/densh\/scala-offheap Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES) , OTM Workshops , 2003 . D. F. Bacon, P. Cheng, and V. Rajan. The metronome: A simpler approach to garbage collection in real-time systems. In In 4 https:\/\/github.com\/densh\/scala-offheap Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES), OTM Workshops, 2003."},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/199818.199860"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133255.1134000"},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781168"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.370"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-45070-2_9"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/286936.286947"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1064979.1064988"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2908080.2908106"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2006.31"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/780731.780743"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2694344.2694361"},{"key":"e_1_3_2_1_18_1","volume-title":"HotOS","author":"Gog I.","year":"2015","unstructured":"I. Gog , J. Giceva , M. Schwarzkopf , K. Vaswani , D. Vytiniotis , G. Ramalingam , M. Costa , D. G. Murray , S. Hand , and M. Isard . Broom: Sweeping out garbage collection from big data systems . In HotOS , 2015 . I. Gog, J. Giceva, M. Schwarzkopf, K. Vaswani, D. Vytiniotis, G. Ramalingam, M. Costa, D. G. Murray, S. Hand, and M. Isard. Broom: Sweeping out garbage collection from big data systems. In HotOS, 2015."},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/512529.512563"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1094811.1094836"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1029873.1029883"},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/117954.117975"},{"key":"e_1_3_2_1_23_1","volume-title":"Proceedings of Scala Days 2011","author":"Hundt R.","year":"2011","unstructured":"R. Hundt . Loop recognition in C++\/Java\/Go\/Scala . In Proceedings of Scala Days 2011 , 2011 . R. Hundt. Loop recognition in C++\/Java\/Go\/Scala. In Proceedings of Scala Days 2011, 2011."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133981.1134023"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.14722\/ndss.2015.23238"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/1346281.1346296"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2872362.2872386"},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.5555\/646154.758676"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2517349.2522738"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/2103656.2103722"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1806651.1806657"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/2694344.2694345"},{"key":"e_1_3_2_1_33_1","volume-title":"OSDI","author":"Nguyen K.","year":"2016","unstructured":"K. Nguyen , L. Fang , G. Xu , B. Demsky , S. Lu , S. Alamian , and O. Mutlu . Yak: A high performance big-data-friendly garbage collector . In OSDI , 2016 . K. Nguyen, L. Fang, G. Xu, B. Demsky, S. Lu, S. Alamian, and O. Mutlu. Yak: A high performance big-data-friendly garbage collector. In OSDI, 2016."},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/1866307.1866371"},{"key":"e_1_3_2_1_35_1","first-page":"17","volume-title":"Dagstuhl Workshop on Data Structures","author":"Sedgewick R.","year":"2008","unstructured":"R. Sedgewick . Left-leaning red-black trees . In Dagstuhl Workshop on Data Structures , page 17 , 2008 . R. Sedgewick. Left-leaning red-black trees. In Dagstuhl Workshop on Data Structures, page 17, 2008."},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.5555\/645394.651903"},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2006.02.003"},{"key":"e_1_3_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/1993478.1993491"},{"key":"e_1_3_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1996.2613"},{"key":"e_1_3_2_1_40_1","volume-title":"Linear types can change the world! In IFIP TC 2 Working Conference","author":"Wadler P.","year":"1990","unstructured":"P. Wadler . Linear types can change the world! In IFIP TC 2 Working Conference , 1990 . P. Wadler. Linear types can change the world! In IFIP TC 2 Working Conference, 1990."},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/507635.507658"},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/363911.363923"},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.14722\/ndss.2015.23190"},{"key":"e_1_3_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380230704"}],"event":{"name":"PLDI '17: ACM SIGPLAN Conference on Programming Language Design and Implementation","location":"Barcelona Spain","acronym":"PLDI '17","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3062341.3062376","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3062341.3062376","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T23:36:32Z","timestamp":1750203392000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3062341.3062376"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,6,14]]},"references-count":44,"alternative-id":["10.1145\/3062341.3062376","10.1145\/3062341"],"URL":"https:\/\/doi.org\/10.1145\/3062341.3062376","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/3140587.3062376","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2017,6,14]]},"assertion":[{"value":"2017-06-14","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}