{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,28]],"date-time":"2025-08-28T12:52:31Z","timestamp":1756385551823,"version":"3.40.3"},"publisher-location":"Berlin, Heidelberg","reference-count":24,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642226540"},{"type":"electronic","value":"9783642226557"}],"license":[{"start":{"date-parts":[[2011,1,1]],"date-time":"2011-01-01T00:00:00Z","timestamp":1293840000000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2011]]},"DOI":"10.1007\/978-3-642-22655-7_19","type":"book-chapter","created":{"date-parts":[[2011,7,18]],"date-time":"2011-07-18T13:37:43Z","timestamp":1310996263000},"page":"408-432","source":"Crossref","is-referenced-by-count":12,"title":["Reuse, Recycle to De-bloat Software"],"prefix":"10.1007","author":[{"given":"Suparna","family":"Bhattacharya","sequence":"first","affiliation":[]},{"given":"Mangala Gowri","family":"Nanda","sequence":"additional","affiliation":[]},{"given":"K.","family":"Gopinath","sequence":"additional","affiliation":[]},{"given":"Manish","family":"Gupta","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"issue":"1","key":"19_CR1","doi-asserted-by":"publisher","first-page":"56","DOI":"10.1109\/MS.2010.7","volume":"27","author":"N. Mitchell","year":"2010","unstructured":"Mitchell, N., Schonberg, E., Sevitsky, G.: Four trends leading to java runtime bloat. IEEE Software\u00a027(1), 56\u201363 (2010)","journal-title":"IEEE Software"},{"key":"19_CR2","doi-asserted-by":"crossref","unstructured":"Xu, G., Mitchell, N., Arnold, M., Rountev, A., Sevitsky, G.: Software bloat analysis: Finding, removing, and preventing performance problems in modern large-scale object-oriented applications. In: Future of Software Engineering Research (2010)","DOI":"10.1145\/1882362.1882448"},{"key":"19_CR3","volume-title":"Java performance tuning","author":"J. Shirazi","year":"2003","unstructured":"Shirazi, J.: Java performance tuning. O\u2019Reilly, Sebastopol (2003)"},{"key":"19_CR4","doi-asserted-by":"crossref","unstructured":"Blackburn, S., et al.: The DaCapo benchmarks: Java benchmarking development and analysis. In: Object-Oriented Programming, Systems, Languages and Applications, OOPSLA (2006)","DOI":"10.1145\/1167473.1167488"},{"key":"19_CR5","doi-asserted-by":"crossref","unstructured":"Nanda, M.G., Sinha, S.: Accurate interprocedural null-dereference analysis for Java. In: Proc. of the 31st Intl. Conf. on Softw., pp. 133\u2013143 (2009)","DOI":"10.1109\/ICSE.2009.5070515"},{"key":"19_CR6","doi-asserted-by":"crossref","unstructured":"Zhao, Y., Shi, J., Zheng, K., Wang, H., Lin, H., Shao, L.: Allocation wall: a limiting factor of java applications on emerging multi-core platforms. In: Object-Oriented Programming, Systems, Languages and Applications, OOPSLA (2009)","DOI":"10.1145\/1640089.1640116"},{"key":"19_CR7","doi-asserted-by":"crossref","unstructured":"Shankar, A., Arnold, M., Bodik, R.: Jolt: lightweight dynamic analysis and removal of object churn. In: Object-Oriented Programming, Systems, Languages and Applications, OOPSLA (2008)","DOI":"10.1145\/1449764.1449775"},{"key":"19_CR8","doi-asserted-by":"crossref","unstructured":"Guyer, S., McKinley, K., Frampton, D.: Free-me: A static analysis for automatic individual object reclamation. In: Programming Language Design and Implementation, PLDI (2006)","DOI":"10.1145\/1133981.1134024"},{"issue":"10","key":"19_CR9","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/320385.320386","volume":"34","author":"J.-D. Choi","year":"1999","unstructured":"Choi, J.-D., Gupta, M., Serrano, M., Sreedhar, V.C., Midkiff, S.: Escape analysis for java. SIGPLAN Not.\u00a034(10), 1\u201319 (1999)","journal-title":"SIGPLAN Not."},{"issue":"10","key":"19_CR10","doi-asserted-by":"publisher","first-page":"20","DOI":"10.1145\/320385.320387","volume":"34","author":"B. Blanchet","year":"1999","unstructured":"Blanchet, B.: Escape analysis for object-oriented languages: application to java. SIGPLAN Not.\u00a034(10), 20\u201334 (1999)","journal-title":"SIGPLAN Not."},{"key":"19_CR11","doi-asserted-by":"crossref","unstructured":"Gay, D., Steensgaard, B.: Fast escape analysis and stack allocation for object-based programs. In: International Conference on Compiler Construction (2000)","DOI":"10.1007\/3-540-46423-9_6"},{"issue":"10","key":"19_CR12","doi-asserted-by":"publisher","first-page":"187","DOI":"10.1145\/320385.320400","volume":"34","author":"J. Whaley","year":"1999","unstructured":"Whaley, J., Rinard, M.: Compositional pointer and escape analysis for java programs. SIGPLAN Not.\u00a034(10), 187\u2013206 (1999)","journal-title":"SIGPLAN Not."},{"issue":"10","key":"19_CR13","doi-asserted-by":"publisher","first-page":"50","DOI":"10.1145\/1035292.1028982","volume":"39","author":"D.F. Bacon","year":"2004","unstructured":"Bacon, D.F., Cheng, P., Rajan, V.T.: A unified theory of garbage collection. SIGPLAN Not.\u00a039(10), 50\u201368 (2004)","journal-title":"SIGPLAN Not."},{"key":"19_CR14","doi-asserted-by":"crossref","unstructured":"Dufour, B., Ryder, B.G., Sevitsky, G.: A scalable technique for characterizing the usage of temporaries in framework-intensive java applications. In: SIGSOFT 2008\/FSE-16, pp. 59\u201370 (2008)","DOI":"10.1145\/1453101.1453111"},{"key":"19_CR15","unstructured":"Buytaert, D., Beyls, K., De Bosschere, K.: Hinting refactorings to reduce object creation in java. In: ACES, pp. 73\u201376 (2005)"},{"key":"19_CR16","doi-asserted-by":"crossref","unstructured":"Xian, F., Srisa-an, W., Jiang, H.: Microphase: an approach to proactively invoking garbage collection for improved performance. In: Object-Oriented Programming, Systems, Languages and Applications, OOPSLA (2007)","DOI":"10.1145\/1297027.1297034"},{"key":"19_CR17","doi-asserted-by":"crossref","unstructured":"Cherem, S., Rugina, R.: Uniqueness inference for compile-time object deallocation. In: ISMM (2007)","DOI":"10.1145\/1296907.1296923"},{"key":"19_CR18","doi-asserted-by":"crossref","unstructured":"Inoue, H., Komatsu, H., Nakatani, T.: A study of memory management for web-based applications on multicore processors. In: Programming Language Design and Implementation, PLDI (2009)","DOI":"10.1145\/1542476.1542520"},{"key":"19_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"429","DOI":"10.1007\/11785477_25","volume-title":"ECOOP 2006 \u2013 Object-Oriented Programming","author":"N. Mitchell","year":"2006","unstructured":"Mitchell, N., Srinivasan, H.: Modeling runtime behavior in framework-based applications. In: Hu, Q. (ed.) ECOOP 2006. LNCS, vol.\u00a04067, pp. 429\u2013451. Springer, Heidelberg (2006)"},{"key":"19_CR20","doi-asserted-by":"crossref","unstructured":"Mitchell, N., Sevitsky, G.: The causes of bloat, the limits of health. In: Object-Oriented Programming, Systems, Languages and Applications, OOPSLA (2007)","DOI":"10.1145\/1297027.1297046"},{"key":"19_CR21","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"77","DOI":"10.1007\/978-3-642-03013-0_5","volume-title":"ECOOP 2009 \u2013 Object-Oriented Programming","author":"N. Mitchell","year":"2009","unstructured":"Mitchell, N., Schonberg, E., Sevitsky, G.: Making sense of large heaps. In: Drossopoulou, S. (ed.) ECOOP 2009. LNCS, vol.\u00a05653, pp. 77\u201397. Springer, Heidelberg (2009)"},{"key":"19_CR22","doi-asserted-by":"crossref","unstructured":"Xu, G., Arnold, M., Mitchell, N., Rountev, A., Sevitsky, G.: Go with the flow: profiling copies to find runtime bloat. In: Programming Language Design and Implementation, PLDI (2010)","DOI":"10.1145\/1542476.1542523"},{"key":"19_CR23","doi-asserted-by":"crossref","unstructured":"Xu, G., et al.: Finding low-utility data structures. In: Programming Language Design and Implementation, PLDI (2010)","DOI":"10.1145\/1806596.1806617"},{"key":"19_CR24","doi-asserted-by":"crossref","unstructured":"Xu, G., Rountev, A.: Detecting inefficiently-used containers to avoid bloat. In: Programming Language Design and Implementation, PLDI (2010)","DOI":"10.1145\/1806596.1806616"}],"container-title":["Lecture Notes in Computer Science","ECOOP 2011 \u2013 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-22655-7_19","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,6,12]],"date-time":"2019-06-12T22:30:50Z","timestamp":1560378650000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-22655-7_19"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2011]]},"ISBN":["9783642226540","9783642226557"],"references-count":24,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-22655-7_19","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2011]]}}}