{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,12]],"date-time":"2026-03-12T14:01:12Z","timestamp":1773324072566,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":38,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642310560","type":"print"},{"value":"9783642310577","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012]]},"DOI":"10.1007\/978-3-642-31057-7_30","type":"book-chapter","created":{"date-parts":[[2012,6,28]],"date-time":"2012-06-28T11:17:41Z","timestamp":1340882261000},"page":"688-712","source":"Crossref","is-referenced-by-count":65,"title":["Application-Only Call Graph Construction"],"prefix":"10.1007","author":[{"given":"Karim","family":"Ali","sequence":"first","affiliation":[]},{"given":"Ond\u0159ej","family":"Lhot\u00e1k","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"key":"30_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"29","DOI":"10.1007\/3-540-45937-5_5","volume-title":"Compiler Construction","author":"G. Agrawal","year":"2002","unstructured":"Agrawal, G., Li, J., Su, Q.: Evaluating a Demand Driven Technique for Call Graph Construction. In: CC 2002. LNCS, vol.\u00a02304, pp. 29\u201345. Springer, Heidelberg (2002)"},{"key":"30_CR2","doi-asserted-by":"crossref","unstructured":"Bacon, D.F., Sweeney, P.F.: Fast static analysis of C++ virtual function calls. In: 11th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 1996, pp. 324\u2013341 (1996)","DOI":"10.1145\/236338.236371"},{"key":"30_CR3","doi-asserted-by":"crossref","unstructured":"Blackburn, S.M., Garner, R., Hoffman, C., Khan, A.M., McKinley, K.S., Bentzur, R., Diwan, A., Feinberg, D., Frampton, D., Guyer, S.Z., Hirzel, M., Hosking, A., Jump, M., Lee, H., Moss, J.E.B., Phansalkar, A., Stefanovi\u0107, D., VanDrunen, T., von Dincklage, D., Wiedermann, B.: The DaCapo benchmarks: Java benchmarking development and analysis. In: 21st Annual ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications, OOPSLA 2006, pp. 169\u2013190 (October 2006)","DOI":"10.1145\/1167473.1167488"},{"key":"30_CR4","unstructured":"Bodden, E.: Soot-list: Stack overflow when generating call graph (May 2011), \n                    \n                      http:\/\/www.sable.mcgill.ca\/pipermail\/soot-list\/2008-July\/001831.html"},{"key":"30_CR5","doi-asserted-by":"crossref","unstructured":"Bodden, E., Sewe, A., Sinschek, J., Oueslati, H., Mezini, M.: Taming reflection: Aiding static analysis in the presence of reflection and custom class loaders. In: 33rd International Conference on Software Engineering, ICSE 2011, pp. 241\u2013250 (2011)","DOI":"10.1145\/1985793.1985827"},{"key":"30_CR6","doi-asserted-by":"crossref","unstructured":"Bravenboer, M., Smaragdakis, Y.: Strictly declarative specification of sophisticated points-to analyses. In: 24th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2009, pp. 243\u2013262 (2009)","DOI":"10.1145\/1640089.1640108"},{"key":"30_CR7","doi-asserted-by":"crossref","unstructured":"Chatterjee, R., Ryder, B.G., Landi, W.A.: Relevant context inference. In: 26th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 1999, pp. 133\u2013146 (1999)","DOI":"10.1145\/292540.292554"},{"key":"30_CR8","doi-asserted-by":"crossref","unstructured":"Clarke, D.G., Potter, J.M., Noble, J.: Ownership types for flexible alias protection. In: 13th ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications, pp. 48\u201364 (1998)","DOI":"10.1145\/286942.286947"},{"key":"30_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"77","DOI":"10.1007\/3-540-49538-X_5","volume-title":"ECOOP \u201995 - Object-Oriented Programming","author":"J. Dean","year":"1995","unstructured":"Dean, J., Grove, D., Chambers, C.: Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis. In: Olthoff, W. (ed.) ECOOP 1995. LNCS, vol.\u00a0952, pp. 77\u2013101. Springer, Heidelberg (1995)"},{"issue":"8","key":"30_CR10","doi-asserted-by":"publisher","first-page":"5","DOI":"10.5381\/jot.2005.4.8.a1","volume":"4","author":"W. Dietl","year":"2005","unstructured":"Dietl, W., M\u00fcller, P.: Universes: Lightweight ownership for JML. Journal of Object Technology\u00a04(8), 5\u201332 (2005)","journal-title":"Journal of Object Technology"},{"key":"30_CR11","doi-asserted-by":"crossref","unstructured":"Dufour, B., Hendren, L., Verbrugge, C.: *J: a tool for dynamic analysis of Java programs. In: Companion of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2003, pp. 306\u2013307 (2003)","DOI":"10.1145\/949344.949425"},{"key":"30_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"194","DOI":"10.1007\/BFb0055519","volume-title":"Types in Compilation","author":"D. Genius","year":"1998","unstructured":"Genius, D., Trapp, M., Zimmermann, W.: An Approach to Improve Locality Using Sandwich Types. In: Leroy, X., Ohori, A. (eds.) TIC 1998. LNCS, vol.\u00a01473, pp. 194\u2013214. Springer, Heidelberg (1998)"},{"key":"30_CR13","unstructured":"Graphviz - Graph Visualization Software (November 2011), \n                    \n                      http:\/\/www.graphviz.org\/"},{"key":"30_CR14","doi-asserted-by":"crossref","unstructured":"Grothoff, C., Palsberg, J., Vitek, J.: Encapsulating objects with confined types. In: 16th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2001, pp. 241\u2013255 (2001)","DOI":"10.1145\/504311.504300"},{"key":"30_CR15","doi-asserted-by":"crossref","unstructured":"Holmes, R., Notkin, D.: Identifying program, test, and environmental changes that affect behaviour. In: International Conference on Software Engineering, ICSE 2011, vol.\u00a010 (2011)","DOI":"10.1145\/1985793.1985844"},{"key":"30_CR16","unstructured":"Holt, R., Sch\u00fcrr, A., Sim, S.E., Winter, A.: Graph eXchange Language (November 2011), \n                    \n                      http:\/\/www.gupro.de\/GXL\/dtd\/gxl-1.1.html"},{"key":"30_CR17","unstructured":"IBM: T.J. Watson Libraries for Analysis WALA (May 2011), \n                    \n                      http:\/\/wala.sourceforge.net\/"},{"key":"30_CR18","unstructured":"JUnit Home Page (December 2011), \n                    \n                      http:\/\/junit.sourceforge.net"},{"key":"30_CR19","doi-asserted-by":"crossref","unstructured":"Lhot\u00e1k, O.: Comparing call graphs. In: 7th ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering, PASTE 2007, pp. 37\u201342 (2007)","DOI":"10.1145\/1251535.1251542"},{"key":"30_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"153","DOI":"10.1007\/3-540-36579-6_12","volume-title":"Compiler Construction","author":"O. Lhot\u00e1k","year":"2003","unstructured":"Lhot\u00e1k, O., Hendren, L.: Scaling Java Points-to Analysis Using SPARK. In: Hedin, G. (ed.) CC 2003. LNCS, vol.\u00a02622, pp. 153\u2013169. Springer, Heidelberg (2003)"},{"key":"30_CR21","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/1391984.1391987","volume":"18","author":"O. Lhot\u00e1k","year":"2008","unstructured":"Lhot\u00e1k, O., Hendren, L.: Evaluating the benefits of context-sensitive points-to analysis using a BDD-based implementation. ACM Trans. Softw. Eng. Methodol. 18, 3:1\u20133:53 (2008)","journal-title":"ACM Trans. Softw. Eng. Methodol."},{"key":"30_CR22","volume-title":"The Java Virtual Machine Specification","author":"T. Lindholm","year":"1999","unstructured":"Lindholm, T., Yellin, F.: The Java Virtual Machine Specification, 2nd edn. Addison-Wesley, Reading (1999)","edition":"2"},{"key":"30_CR23","unstructured":"Linux User\u2019s Manual: time(1) (October 2011), \n                    \n                      http:\/\/www.kernel.org\/doc\/man-pages\/online\/pages\/man1\/time.1.html"},{"key":"30_CR24","unstructured":"LogicBlox Home Page (November 2011), \n                    \n                      http:\/\/logicblox.com\/"},{"key":"30_CR25","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"158","DOI":"10.1007\/BFb0054091","volume-title":"ECOOP \u201998 - Object-Oriented Programming","author":"J. Noble","year":"1998","unstructured":"Noble, J., Vitek, J., Potter, J.: Flexible Alias Protection. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol.\u00a01445, pp. 158\u2013185. Springer, Heidelberg (1998)"},{"key":"30_CR26","doi-asserted-by":"publisher","first-page":"372","DOI":"10.1109\/TSE.2004.20","volume":"30","author":"A. Rountev","year":"2004","unstructured":"Rountev, A., Milanova, A., Ryder, B.G.: Fragment class analysis for testing of polymorphism in Java software. IEEE Trans. Softw. Eng.\u00a030, 372\u2013387 (2004)","journal-title":"IEEE Trans. Softw. Eng."},{"key":"30_CR27","doi-asserted-by":"crossref","unstructured":"Rountev, A., Ryder, B.G., Landi, W.: Data-flow analysis of program fragments. In: 7th European Software Engineering Conference Held Jointly with the 7th ACM SIGSOFT International Symposium on Foundations of Software Engineering, ESEC\/FSE-7, pp. 235\u2013252 (1999)","DOI":"10.1007\/3-540-48166-4_15"},{"key":"30_CR28","doi-asserted-by":"crossref","unstructured":"Sreedhar, V.C., Burke, M., Choi, J.D.: A framework for interprocedural optimization in the presence of dynamic class loading. In: ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation, PLDI 2000, pp. 196\u2013207 (2000)","DOI":"10.1145\/358438.349326"},{"key":"30_CR29","unstructured":"Standard Performance Evaluation Corporation: SPEC JVM98 Benchmarks (May 2011), \n                    \n                      http:\/\/www.spec.org\/jvm98\/"},{"key":"30_CR30","doi-asserted-by":"crossref","unstructured":"Sundaresan, V., Hendren, L., Razafimahefa, C., Vall\u00e9e-Rai, R., Lam, P., Gagnon, E., Godin, C.: Practical virtual method call resolution for Java. In: 15th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2000, pp. 264\u2013280 (2000)","DOI":"10.1145\/354222.353189"},{"key":"30_CR31","unstructured":"The DOT Language (November 2011), \n                    \n                      http:\/\/www.graphviz.org\/content\/dot-language"},{"key":"30_CR32","doi-asserted-by":"crossref","unstructured":"Tip, F., Palsberg, J.: Scalable propagation-based call graph construction algorithms. In: 15th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2000, pp. 281\u2013293 (2000)","DOI":"10.1145\/354222.353190"},{"key":"30_CR33","doi-asserted-by":"publisher","first-page":"625","DOI":"10.1145\/586088.586090","volume":"24","author":"F. Tip","year":"2002","unstructured":"Tip, F., Sweeney, P.F., Laffra, C., Eisma, A., Streeter, D.: Practical extraction techniques for Java. ACM Trans. Program. Lang. Syst.\u00a024, 625\u2013666 (2002)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"30_CR34","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"18","DOI":"10.1007\/3-540-46423-9_2","volume-title":"Compiler Construction","author":"R. Vall\u00e9e-Rai","year":"2000","unstructured":"Vall\u00e9e-Rai, R., Gagnon, E., Hendren, L., Lam, P., Pominville, P., Sundaresan, V.: Optimizing Java Bytecode Using the Soot Framework: Is It Feasible? In: Watt, D.A. (ed.) CC 2000. LNCS, vol.\u00a01781, pp. 18\u201334. Springer, Heidelberg (2000)"},{"key":"30_CR35","doi-asserted-by":"crossref","unstructured":"Vitek, J., Bokowski, B.: Confined types. In: 1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications, pp. 82\u201396 (1999)","DOI":"10.1145\/320385.320392"},{"issue":"6","key":"30_CR36","doi-asserted-by":"publisher","first-page":"507","DOI":"10.1002\/spe.369","volume":"31","author":"J. Vitek","year":"2001","unstructured":"Vitek, J., Bokowski, B.: Confined types in Java. Softw., Pract. Exper.\u00a031(6), 507\u2013532 (2001)","journal-title":"Softw., Pract. Exper."},{"key":"30_CR37","doi-asserted-by":"publisher","first-page":"231","DOI":"10.1002\/smr.351","volume":"19","author":"W. Zhang","year":"2007","unstructured":"Zhang, W., Ryder, B.G.: Automatic construction of accurate application call graph with library call abstraction for Java: Research Articles. J. Softw. Maint. Evol.\u00a019, 231\u2013252 (2007)","journal-title":"J. Softw. Maint. Evol."},{"issue":"1","key":"30_CR38","doi-asserted-by":"publisher","first-page":"83","DOI":"10.1017\/S0956796805005691","volume":"16","author":"T. Zhao","year":"2006","unstructured":"Zhao, T., Palsberg, J., Vitek, J.: Type-based confinement. J. Funct. Program.\u00a016(1), 83\u2013128 (2006)","journal-title":"J. Funct. Program."}],"container-title":["Lecture Notes in Computer Science","ECOOP 2012 \u2013 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-31057-7_30.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,5,4]],"date-time":"2021-05-04T11:42:32Z","timestamp":1620128552000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-31057-7_30"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012]]},"ISBN":["9783642310560","9783642310577"],"references-count":38,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-31057-7_30","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2012]]}}}