{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,7]],"date-time":"2025-10-07T23:30:12Z","timestamp":1759879812090,"version":"3.40.3"},"publisher-location":"Cham","reference-count":26,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031747755"},{"type":"electronic","value":"9783031747762"}],"license":[{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2025]]},"DOI":"10.1007\/978-3-031-74776-2_5","type":"book-chapter","created":{"date-parts":[[2025,1,20]],"date-time":"2025-01-20T05:35:52Z","timestamp":1737351352000},"page":"120-146","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["Full Control-Flow Sensitivity for\u00a0Definitional Interpreters"],"prefix":"10.1007","author":[{"given":"Kimball","family":"Germane","sequence":"first","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2025,1,21]]},"reference":[{"issue":"4","key":"5_CR1","doi-asserted-by":"publisher","first-page":"407","DOI":"10.1017\/S0956796800000496","volume":"2","author":"F Bourdoncle","year":"1992","unstructured":"Bourdoncle, F.: Abstract interpretation by dynamic partitioning. J. Funct. Program. 2(4), 407\u2013423 (1992)","journal-title":"J. Funct. Program."},{"key":"5_CR2","doi-asserted-by":"crossref","unstructured":"Chase, D.R., Wegman, M.N., Zadeck, F.K.: Analysis of pointers and structures. In: Fischer, B.N. (ed.) Proceedings of the ACM SIGPLAN 1990 Conference on Programming Language Design and Implementation (PLDI), White Plains, New York, USA, 20\u201322 June 1990, pp. 296\u2013310. ACM (1990)","DOI":"10.1145\/93542.93585"},{"key":"5_CR3","doi-asserted-by":"publisher","unstructured":"Chaudhuri, S.: Subcubic algorithms for recursive state machines. In: Proceedings of the 35th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2008, pp. 159\u2013169. Association for Computing Machinery, New York (2008). https:\/\/doi.org\/10.1145\/1328438.1328460","DOI":"10.1145\/1328438.1328460"},{"key":"5_CR4","doi-asserted-by":"crossref","unstructured":"Choi, J.D., Burke, M., Carini, P.: Efficient flow-sensitive interprocedural computation of pointer-induced aliases and side effects. In: Proceedings of the 20th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 1993, pp. 232\u2013245. Association for Computing Machinery, New York (1993)","DOI":"10.1145\/158511.158639"},{"key":"5_CR5","doi-asserted-by":"crossref","unstructured":"Darais, D., Labich, N., Nguyen, P.C., Van\u00a0Horn, D.: Abstracting definitional interpreters (functional pearl). In: Proceedings of the ACM on Programming Languages, vol. 1, no. ICFP, pp. 12:1\u201312:25 (2017)","DOI":"10.1145\/3110256"},{"key":"5_CR6","doi-asserted-by":"crossref","unstructured":"Darais, D., Might, M., Van\u00a0Horn, D.: Galois transformers and modular abstract interpreters: reusable metatheory for program analysis. In: Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2015, pp. 552\u2013571. ACM, New York (2015)","DOI":"10.1145\/2814270.2814308"},{"key":"5_CR7","unstructured":"Darais, D.C.: Mechanizing abstract interpretation. Ph.D. thesis, University of Maryland, College Park, MD, USA (2017)"},{"key":"5_CR8","unstructured":"Germane, K.: Full control-flow sensitivity for definitional interpreters. Technical report, Brigham Young University (2024)"},{"key":"5_CR9","doi-asserted-by":"crossref","unstructured":"Gibbons, J., Hinze, R.: Just do it: simple monadic equational reasoning. In: Chakravarty, M.M.T., Hu, Z., Danvy, O. (eds.) Proceeding of the 16th ACM SIGPLAN international conference on Functional Programming, ICFP 2011, Tokyo, Japan, 19\u201321 September 2011, pp. 2\u201314. ACM (2011)","DOI":"10.1145\/2034773.2034777"},{"key":"5_CR10","doi-asserted-by":"crossref","unstructured":"Gilray, T., Adams, M.D., Might, M.: Allocation characterizes polyvariance: a unified methodology for polyvariant control-flow analysis. In: Garrigue, J., Keller, G., Sumii, E. (eds.) Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming, ICFP 2016, Nara, Japan, 18\u201322 September 2016, pp. 407\u2013420. ACM (2016)","DOI":"10.1145\/2951913.2951936"},{"issue":"6","key":"5_CR11","doi-asserted-by":"publisher","first-page":"399","DOI":"10.1007\/s10207-009-0086-1","volume":"8","author":"C Hammer","year":"2009","unstructured":"Hammer, C., Snelting, G.: Flow-sensitive, context-sensitive, and object-sensitive information flow control based on program dependence graphs. Int. J. Inf. Secur. 8(6), 399\u2013422 (2009)","journal-title":"Int. J. Inf. Secur."},{"key":"5_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"200","DOI":"10.1007\/3-540-49727-7_12","volume-title":"Static Analysis","author":"M Handjieva","year":"1998","unstructured":"Handjieva, M., Tzolovski, S.: Refining static analyses by trace-based partitioning using control flow. In: Levi, G. (ed.) SAS 1998. LNCS, vol. 1503, pp. 200\u2013214. Springer, Heidelberg (1998). https:\/\/doi.org\/10.1007\/3-540-49727-7_12"},{"key":"5_CR13","doi-asserted-by":"crossref","unstructured":"Hardekopf, B., Lin, C.: Semi-sparse flow-sensitive pointer analysis. In: Shao, Z., Pierce, B.C. (eds.) Proceedings of the 36th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2009, Savannah, GA, USA, 21\u201323 January 2009, pp. 226\u2013238. ACM (2009)","DOI":"10.1145\/1480881.1480911"},{"key":"5_CR14","doi-asserted-by":"crossref","unstructured":"Hardekopf, B., Lin, C.: Flow-sensitive pointer analysis for millions of lines of code. In: Proceedings of the CGO 2011, The 9th International Symposium on Code Generation and Optimization, Chamonix, France, 2\u20136 April 2011, pp. 289\u2013298. IEEE Computer Society (2011)","DOI":"10.1109\/CGO.2011.5764696"},{"key":"5_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"472","DOI":"10.1007\/978-3-642-54013-4_26","volume-title":"Verification, Model Checking, and Abstract Interpretation","author":"B Hardekopf","year":"2014","unstructured":"Hardekopf, B., Wiedermann, B., Churchill, B., Kashyap, V.: Widening for control-flow. In: McMillan, K.L., Rival, X. (eds.) VMCAI 2014. LNCS, vol. 8318, pp. 472\u2013491. Springer, Heidelberg (2014). https:\/\/doi.org\/10.1007\/978-3-642-54013-4_26"},{"key":"5_CR16","doi-asserted-by":"crossref","unstructured":"Hudak, P.: A semantic model of reference counting and its abstraction (detailed summary). In: Scherlis, W.L., Williams, J.H., Gabriel, R.P. (eds.) Proceedings of the 1986 ACM Conference on LISP and Functional Programming, LFP 1986, Cambridge, Massachusetts, USA, 4\u20136 August 1986, pp. 351\u2013363. ACM (1986)","DOI":"10.1145\/319838.319876"},{"key":"5_CR17","doi-asserted-by":"crossref","unstructured":"Kim, S., Rival, X., Ryu, S.: A theoretical foundation of sensitivity in an abstract interpretation framework. ACM Trans. Program. Lang. Syst. 40(3), 13:1\u201313:44 (2018)","DOI":"10.1145\/3230624"},{"key":"5_CR18","doi-asserted-by":"crossref","unstructured":"Liang, S., Hudak, P., Jones, M.: Monad transformers and modular interpreters. In: Proceedings of the 22nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 1995, pp. 333\u2013343. Association for Computing Machinery, New York (1995)","DOI":"10.1145\/199448.199528"},{"key":"5_CR19","unstructured":"Might, M.: Environment analysis of higher-order languages. Ph.D. thesis, Georgia Institute of Technology, Atlanta, GA, USA (2007). https:\/\/hdl.handle.net\/1853\/16289"},{"key":"5_CR20","doi-asserted-by":"crossref","unstructured":"Might, M., Shivers, O.: Improving flow analyses via gammaCFA: abstract garbage collection and counting. In: Proceedings of the Eleventh ACM SIGPLAN International Conference on Functional Programming, ICFP\u00a02006, pp. 13\u201325. ACM, New York (2006)","DOI":"10.1145\/1159803.1159807"},{"key":"5_CR21","doi-asserted-by":"crossref","unstructured":"Might, M., Smaragdakis, Y., Van\u00a0Horn, D.: Resolving and exploiting the k-CFA paradox: illuminating functional vs. object-oriented program analysis. In: Proceedings of the 31st ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI\u00a02010, pp. 305\u2013315. ACM, New York (2010)","DOI":"10.1145\/1806596.1806631"},{"key":"5_CR22","unstructured":"Shivers, O.: Control-flow analysis of higher-order languages. Ph.D. thesis, Carnegie Mellon University, Pittsburgh, PA, USA (1991)"},{"key":"5_CR23","doi-asserted-by":"crossref","unstructured":"Smaragdakis, Y., Bravenboer, M., Lhot\u00e1k, O.: Pick your contexts well: understanding object-sensitivity. In: Proceedings of the 38th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2011, pp. 17\u201330. ACM, New York (2011)","DOI":"10.1145\/1926385.1926390"},{"key":"5_CR24","doi-asserted-by":"crossref","unstructured":"Van\u00a0Horn, D., Might, M.: Abstracting abstract machines. In: Proceedings of the 15th ACM SIGPLAN International Conference on Functional Programming, ICFP 2010, pp. 51\u201362. ACM, New York (2010)","DOI":"10.1145\/1863543.1863553"},{"key":"5_CR25","doi-asserted-by":"crossref","unstructured":"Vandenbroucke, A., Schrijvers, T., Piessens, F.: Fixing non-determinism. In: Proceedings of the 27th Symposium on the Implementation and Application of Functional Programming Languages, IFL 2015. Association for Computing Machinery, New York (2015)","DOI":"10.1145\/2897336.2897342"},{"key":"5_CR26","doi-asserted-by":"crossref","unstructured":"Wei, G., Decker, J., Rompf, T.: Refunctionalization of abstract abstract machines: bridging the gap between abstract abstract machines and abstract definitional interpreters (functional pearl). In: Proceedings of the ACM on Programming Languages, vol. 2, no. ICFP, pp. 105:1\u2013105:28 (2018)","DOI":"10.1145\/3236800"}],"container-title":["Lecture Notes in Computer Science","Static Analysis"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-74776-2_5","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,1,20]],"date-time":"2025-01-20T05:36:02Z","timestamp":1737351362000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-74776-2_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025]]},"ISBN":["9783031747755","9783031747762"],"references-count":26,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-74776-2_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2025]]},"assertion":[{"value":"21 January 2025","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"SAS","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Static Analysis Symposium","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Pasadena, CA","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"USA","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2024","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"20 October 2024","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"22 October 2024","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"31","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"sas2024","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/2024.splashcon.org\/home\/sas-2024","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}