skip to main content
Control-flow analysis of higher-order languages of taming lambda
Publisher:
  • Carnegie Mellon University
  • Schenley Park Pittsburgh, PA
  • United States
Order Number:UMI Order No. GAX91-26964
Bibliometrics
Skip Abstract Section
Abstract

Programs written in powerful, higher-order languages like Scheme, ML, and Common Lisp should run as fast as their FORTRAN and C counterparts. They should, but they don't. A major reason is the level of optimisation applied to these two classes of languages. Many FORTRAN and C compilers employ an arsenal of sophisticated global optimisations that depend upon data-flow analysis: common-subexpression elimination, loop-invariant detection, induction-variable elimination, and many, many more. Compilers for higher-order languages do not provide these optimisations. Without them, Scheme, LISP and ML compilers are doomed to produce code that runs slower than their FORTRAN and C counterparts.

The problem is the lack of an explicit control-flow graph at compile time, something which traditional data-flow analysis techniques require. In this dissertation, I present a technique for recovering the control-flow graph of a Scheme program at compile time. I give examples of how this information can be used to perform several data-flow analysis optimisations, including copy propagation, induction-variable elimination, useless-variable elimination, and type recovery.

The analysis is defined in terms of a non-standard semantic interpretation. The denotational semantics is carefully developed, and several theorems establishing the correctness of the semantics and the implementing algorithms are proven.

Cited By

  1. Zhao Z, Wang X, Xu Z, Tang Z, Li Y and Di P Incremental Call Graph Construction in Industrial Practice Proceedings of the 45th International Conference on Software Engineering: Software Engineering in Practice, (471-482)
  2. ACM
    Park J, An S and Ryu S Automatically deriving JavaScript static analyzers from specifications using Meta-level static analysis Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (1022-1034)
  3. ACM
    Koppel J, Kearl J and Solar-Lezama A (2022). Automatically deriving control-flow graph generators from operational semantics, Proceedings of the ACM on Programming Languages, 6:ICFP, (742-771), Online publication date: 29-Aug-2022.
  4. ACM
    Liu B and Huang J (2022). SHARP: fast incremental context-sensitive pointer analysis for Java, Proceedings of the ACM on Programming Languages, 6:OOPSLA1, (1-28), Online publication date: 29-Apr-2022.
  5. ACM
    Abadi A, Makovitzki B, Shemer R and Tyszberowicz S A lightweight approach for sound call graph approximation Proceedings of the 37th ACM/SIGAPP Symposium on Applied Computing, (1837-1844)
  6. Stiévenart Q, Van Es N, Van der Plas J and De Roover C (2022). A parallel worklist algorithm and its exploration heuristics for static modular analyses, Journal of Systems and Software, 181:C, Online publication date: 1-Nov-2021.
  7. ACM
    Lu J, He D and Xue J (2021). Eagle, ACM Transactions on Software Engineering and Methodology, 30:4, (1-46), Online publication date: 31-Oct-2021.
  8. ACM
    Germane K and McCarthy J (2021). Newly-single and loving it: improving higher-order must-alias analysis with heap fragments, Proceedings of the ACM on Programming Languages, 5:ICFP, (1-28), Online publication date: 22-Aug-2021.
  9. ACM
    Gilray T, Kumar S and Micinski K Compiling data-parallel Datalog Proceedings of the 30th ACM SIGPLAN International Conference on Compiler Construction, (23-35)
  10. ACM
    Ueno H, Toman J, Kobayashi N and Tsukada T Counterexample generation for program verification based on ownership refinement types Proceedings of the 2021 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, (44-57)
  11. ACM
    Bruce B, Zhang T, Arora J, Xu G and Kim M JShrink: in-depth investigation into debloating modern Java applications Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (135-146)
  12. ACM
    Grech N, Kong M, Jurisevic A, Brent L, Scholz B and Smaragdakis Y (2020). MadMax, Communications of the ACM, 63:10, (87-95), Online publication date: 23-Sep-2020.
  13. ACM
    Li Y, Tan T, Møller A and Smaragdakis Y (2020). A Principled Approach to Selective Context Sensitivity for Pointer Analysis, ACM Transactions on Programming Languages and Systems, 42:2, (1-40), Online publication date: 30-Jun-2020.
  14. ACM
    Sui L, Dietrich J, Tahir A and Fourtounis G On the recall of static call graph construction in practice Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering, (1049-1060)
  15. ACM
    Antoniadis A, Filippakis N, Krishnan P, Ramesh R, Allen N and Smaragdakis Y Static analysis of Java enterprise applications: frameworks and caches, the elephants in the room Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation, (794-807)
  16. ACM
    Keidel S and Erdweg S (2019). Sound and reusable components for abstract interpretation, Proceedings of the ACM on Programming Languages, 3:OOPSLA, (1-28), Online publication date: 10-Oct-2019.
  17. ACM
    Lu J and Xue J (2019). Precision-preserving yet fast object-sensitive pointer analysis with partial context sensitivity, Proceedings of the ACM on Programming Languages, 3:OOPSLA, (1-29), Online publication date: 10-Oct-2019.
  18. ACM
    Facchinetti L, Palmer Z and Smith S (2019). Higher-order Demand-driven Program Analysis, ACM Transactions on Programming Languages and Systems, 41:3, (1-53), Online publication date: 30-Sep-2019.
  19. Khatchadourian R, Tang Y, Bagherzadeh M and Ahmed S Safe automated refactoring for intelligent parallelization of Java 8 streams Proceedings of the 41st International Conference on Software Engineering, (619-630)
  20. ACM
    Liu B, Huang J and Rauchwerger L (2019). Rethinking Incremental and Parallel Pointer Analysis, ACM Transactions on Programming Languages and Systems, 41:1, (1-31), Online publication date: 31-Mar-2019.
  21. Merriënboer B, Breuleux O, Bergeron A and Lamblin P Automatic differentiation in ML Proceedings of the 32nd International Conference on Neural Information Processing Systems, (8771-8781)
  22. ACM
    Bastani O, Sharma R, Aiken A and Liang P (2018). Active learning of points-to specifications, ACM SIGPLAN Notices, 53:4, (678-692), Online publication date: 2-Dec-2018.
  23. ACM
    Li Y, Tan T, Møller A and Smaragdakis Y (2018). Precision-guided context sensitivity for pointer analysis, Proceedings of the ACM on Programming Languages, 2:OOPSLA, (1-29), Online publication date: 24-Oct-2018.
  24. ACM
    Grech N, Kong M, Jurisevic A, Brent L, Scholz B and Smaragdakis Y (2018). MadMax: surviving out-of-gas conditions in Ethereum smart contracts, Proceedings of the ACM on Programming Languages, 2:OOPSLA, (1-27), Online publication date: 24-Oct-2018.
  25. ACM
    Kim S, Rival X and Ryu S (2018). A Theoretical Foundation of Sensitivity in an Abstract Interpretation Framework, ACM Transactions on Programming Languages and Systems, 40:3, (1-44), Online publication date: 30-Sep-2018.
  26. ACM
    Terao T Lazy Abstraction for Higher-Order Program Verification Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming, (1-13)
  27. ACM
    Keidel S, Poulsen C and Erdweg S (2018). Compositional soundness proofs of abstract interpreters, Proceedings of the ACM on Programming Languages, 2:ICFP, (1-26), Online publication date: 30-Jul-2018.
  28. ACM
    Bastani O, Sharma R, Aiken A and Liang P Active learning of points-to specifications Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation, (678-692)
  29. ACM
    Nguyễn P, Gilray T, Tobin-Hochstadt S and Van Horn D (2017). Soft contract verification for higher-order stateful programs, Proceedings of the ACM on Programming Languages, 2:POPL, (1-30), Online publication date: 1-Jan-2018.
  30. ACM
    Grech N and Smaragdakis Y (2017). P/Taint: unified points-to and taint analysis, Proceedings of the ACM on Programming Languages, 1:OOPSLA, (1-28), Online publication date: 12-Oct-2017.
  31. ACM
    Tan T, Li Y and Xue J (2017). Efficient and precise points-to analysis: modeling the heap by merging equivalent automata, ACM SIGPLAN Notices, 52:6, (278-291), Online publication date: 14-Sep-2017.
  32. ACM
    Thiessen R and Lhoták O (2017). Context transformations for pointer analysis, ACM SIGPLAN Notices, 52:6, (263-277), Online publication date: 14-Sep-2017.
  33. ACM
    Dietrich J, Sui L, Rasheed S and Tahir A On the construction of soundness oracles Proceedings of the 6th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis, (37-42)
  34. ACM
    Balatsouras G, Ferles K, Kastrinis G and Smaragdakis Y A Datalog model of must-alias analysis Proceedings of the 6th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis, (7-12)
  35. ACM
    Tan T, Li Y and Xue J Efficient and precise points-to analysis: modeling the heap by merging equivalent automata Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, (278-291)
  36. ACM
    Thiessen R and Lhoták O Context transformations for pointer analysis Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, (263-277)
  37. Padhye R and Sen K Travioli Proceedings of the 39th International Conference on Software Engineering, (473-483)
  38. ACM
    Germane K and Might M (2017). A posteriori environment analysis with Pushdown Delta CFA, ACM SIGPLAN Notices, 52:1, (19-31), Online publication date: 11-May-2017.
  39. Baydin A, Pearlmutter B, Radul A and Siskind J (2017). Automatic differentiation in machine learning, The Journal of Machine Learning Research, 18:1, (5595-5637), Online publication date: 1-Jan-2017.
  40. ACM
    Germane K and Might M A posteriori environment analysis with Pushdown Delta CFA Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages, (19-31)
  41. ACM
    Gilray T, Adams M and Might M (2016). Allocation characterizes polyvariance: a unified methodology for polyvariant control-flow analysis, ACM SIGPLAN Notices, 51:9, (407-420), Online publication date: 5-Dec-2016.
  42. ACM
    Wei S, Tripp O, Ryder B and Dolby J Revamping JavaScript static analysis via localization and remediation of root causes of imprecision Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, (487-498)
  43. ACM
    Gilray T, Adams M and Might M Allocation characterizes polyvariance: a unified methodology for polyvariant control-flow analysis Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming, (407-420)
  44. Spaccasassi C and Koutavas V Type-Based Analysis for Session Inference Extended Abstract 36th IFIP WG 6.1 International Conference on Formal Techniques for Distributed Objects, Components, and Systems - Volume 9688, (248-266)
  45. ACM
    Sena D, Coelho R, Kulesza U and Bonifácio R Understanding the exception handling strategies of Java libraries Proceedings of the 13th International Conference on Mining Software Repositories, (212-222)
  46. ACM
    Leißa R, Boesche K, Hack S, Membarth R and Slusallek P (2015). Shallow embedding of DSLs via online partial evaluation, ACM SIGPLAN Notices, 51:3, (11-20), Online publication date: 11-May-2016.
  47. ACM
    Sena D, Coelho R and Kulesza U Integrated analysis of exception flows and handler actions in Java libraries Proceedings of the 31st Annual ACM Symposium on Applied Computing, (1520-1526)
  48. ACM
    Stancu C, Wimmer C, Brunthaler S, Larsen P and Franz M (2015). Safe and efficient hybrid memory management for Java, ACM SIGPLAN Notices, 50:11, (81-92), Online publication date: 28-Jan-2016.
  49. ACM
    Darais D, Might M and Van Horn D (2015). Galois transformers and modular abstract interpreters: reusable metatheory for program analysis, ACM SIGPLAN Notices, 50:10, (552-571), Online publication date: 18-Dec-2015.
  50. ACM
    Dietrich J, Hollingum N and Scholz B (2015). Giga-scale exhaustive points-to analysis for Java in under a minute, ACM SIGPLAN Notices, 50:10, (535-551), Online publication date: 18-Dec-2015.
  51. ACM
    Feng Y, Wang X, Dillig I and Lin C (2015). EXPLORER : query- and demand-driven exploration of interprocedural control flow properties, ACM SIGPLAN Notices, 50:10, (520-534), Online publication date: 18-Dec-2015.
  52. ACM
    Ferrara P, Tripp O and Pistoia M MorphDroid Proceedings of the 31st Annual Computer Security Applications Conference, (371-380)
  53. ACM
    Ali K, Rapoport M, Lhoták O, Dolby J and Tip F (2015). Type-Based Call Graph Construction Algorithms for Scala, ACM Transactions on Software Engineering and Methodology, 25:1, (1-43), Online publication date: 2-Dec-2015.
  54. ACM
    Leißa R, Boesche K, Hack S, Membarth R and Slusallek P Shallow embedding of DSLs via online partial evaluation Proceedings of the 2015 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, (11-20)
  55. ACM
    Darais D, Might M and Van Horn D Galois transformers and modular abstract interpreters: reusable metatheory for program analysis Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, (552-571)
  56. ACM
    Dietrich J, Hollingum N and Scholz B Giga-scale exhaustive points-to analysis for Java in under a minute Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, (535-551)
  57. ACM
    Feng Y, Wang X, Dillig I and Lin C EXPLORER : query- and demand-driven exploration of interprocedural control flow properties Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, (520-534)
  58. Kobayashi N and Li X Automata-Based Abstraction Refinement for µHORS Model Checking Proceedings of the 2015 30th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), (713-724)
  59. ACM
    Stancu C, Wimmer C, Brunthaler S, Larsen P and Franz M Safe and efficient hybrid memory management for Java Proceedings of the 2015 International Symposium on Memory Management, (81-92)
  60. ACM
    Voirol N, Kneuss E and Kuncak V Counter-example complete verification for higher-order functions Proceedings of the 6th ACM SIGPLAN Symposium on Scala, (18-29)
  61. ACM
    Glaze D and Van Horn D (2014). Abstracting abstract control, ACM SIGPLAN Notices, 50:2, (11-22), Online publication date: 12-May-2015.
  62. Leißa R, Köster M and Hack S A graph-based higher-order intermediate representation Proceedings of the 13th Annual IEEE/ACM International Symposium on Code Generation and Optimization, (202-212)
  63. ACM
    Andreasen E and Møller A (2014). Determinacy in static analysis for jQuery, ACM SIGPLAN Notices, 49:10, (17-31), Online publication date: 31-Dec-2015.
  64. ACM
    Bergstrom L, Fluet M, Le M, Reppy J and Sandler N (2014). Practical and effective higher-order optimizations, ACM SIGPLAN Notices, 49:9, (81-93), Online publication date: 26-Nov-2014.
  65. ACM
    Glaze D and Van Horn D Abstracting abstract control Proceedings of the 10th ACM Symposium on Dynamic languages, (11-22)
  66. ACM
    Andreasen E and Møller A Determinacy in static analysis for jQuery Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, (17-31)
  67. ACM
    Stancu C, Wimmer C, Brunthaler S, Larsen P and Franz M Comparing points-to static analysis with runtime recorded profiling data Proceedings of the 2014 International Conference on Principles and Practices of Programming on the Java platform: Virtual machines, Languages, and Tools, (157-168)
  68. ACM
    Bergstrom L, Fluet M, Le M, Reppy J and Sandler N Practical and effective higher-order optimizations Proceedings of the 19th ACM SIGPLAN international conference on Functional programming, (81-93)
  69. Ali K, Rapoport M, Lhoták O, Dolby J and Tip F Constructing Call Graphs of Scala Programs Proceedings of the 28th European Conference on ECOOP 2014 --- Object-Oriented Programming - Volume 8586, (54-79)
  70. ACM
    Smaragdakis Y, Kastrinis G and Balatsouras G Introspective analysis Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and Implementation, (485-495)
  71. ACM
    Smaragdakis Y, Kastrinis G and Balatsouras G (2014). Introspective analysis, ACM SIGPLAN Notices, 49:6, (485-495), Online publication date: 5-Jun-2014.
  72. Hardekopf B, Wiedermann B, Churchill B and Kashyap V Widening for Control-Flow Proceedings of the 15th International Conference on Verification, Model Checking, and Abstract Interpretation - Volume 8318, (472-491)
  73. ACM
    Broadbent C, Carayol A, Hague M and Serre O (2013). C-SHORe, ACM SIGPLAN Notices, 48:9, (13-24), Online publication date: 12-Nov-2013.
  74. ACM
    Smaragdakis Y, Balatsouras G and Kastrinis G (2013). Set-based pre-processing for points-to analysis, ACM SIGPLAN Notices, 48:10, (253-270), Online publication date: 12-Nov-2013.
  75. Sumner W and Zhang X Identifying execution points for dynamic analyses Proceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering, (81-91)
  76. ACM
    Liang S, Keep A, Might M, Lyde S, Gilray T, Aldous P and Van Horn D Sound and precise malware analysis for android via pushdown reachability and entry-point saturation Proceedings of the Third ACM workshop on Security and privacy in smartphones & mobile devices, (21-32)
  77. ACM
    Smaragdakis Y, Balatsouras G and Kastrinis G Set-based pre-processing for points-to analysis Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications, (253-270)
  78. ACM
    Broadbent C, Carayol A, Hague M and Serre O C-SHORe Proceedings of the 18th ACM SIGPLAN international conference on Functional programming, (13-24)
  79. ACM
    Leonard T, Hall-May M and Surridge M (2013). Modelling Access Propagation in Dynamic Systems, ACM Transactions on Information and System Security, 16:2, (1-31), Online publication date: 1-Sep-2013.
  80. ACM
    Sergey I, Devriese D, Might M, Midtgaard J, Darais D, Clarke D and Piessens F (2013). Monadic abstract interpreters, ACM SIGPLAN Notices, 48:6, (399-410), Online publication date: 23-Jun-2013.
  81. ACM
    Kastrinis G and Smaragdakis Y (2013). Hybrid context-sensitivity for points-to analysis, ACM SIGPLAN Notices, 48:6, (423-434), Online publication date: 23-Jun-2013.
  82. ACM
    Sergey I, Devriese D, Might M, Midtgaard J, Darais D, Clarke D and Piessens F Monadic abstract interpreters Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation, (399-410)
  83. ACM
    Kastrinis G and Smaragdakis Y Hybrid context-sensitivity for points-to analysis Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation, (423-434)
  84. ACM
    Park C, Sen K and Iancu C Scaling data race detection for partitioned global address space programs Proceedings of the 27th international ACM conference on International conference on supercomputing, (47-58)
  85. Gilray T and Might M A Survey of Polyvariance in Abstract Interpretations Revised Selected Papers of the 14th International Symposium on Trends in Functional Programming - Volume 8322, (134-148)
  86. Lyde S and Might M Control-Flow Analysis with SAT Solvers Revised Selected Papers of the 14th International Symposium on Trends in Functional Programming - Volume 8322, (125-133)
  87. Kastrinis G and Smaragdakis Y Efficient and effective handling of exceptions in java points-to analysis Proceedings of the 22nd international conference on Compiler Construction, (41-60)
  88. ACM
    Nasre R (2012). Exploiting the structure of the constraint graph for efficient points-to analysis, ACM SIGPLAN Notices, 47:11, (121-132), Online publication date: 8-Jan-2013.
  89. ACM
    Tobin-Hochstadt S and Van Horn D (2012). Higher-order symbolic execution via contracts, ACM SIGPLAN Notices, 47:10, (537-554), Online publication date: 15-Nov-2012.
  90. ACM
    Tobin-Hochstadt S and Van Horn D Higher-order symbolic execution via contracts Proceedings of the ACM international conference on Object oriented programming systems languages and applications, (537-554)
  91. ACM
    Earl C, Sergey I, Might M and Van Horn D (2012). Introspective pushdown analysis of higher-order programs, ACM SIGPLAN Notices, 47:9, (177-188), Online publication date: 15-Oct-2012.
  92. Wilkerson J (2012). A Source Code Change Impact Analysis Algorithm for Iterative Software Development, International Journal of Decision Support System Technology, 4:4, (60-75), Online publication date: 1-Oct-2012.
  93. Midtgaard J, Adams M and Might M A structural soundness proof for shivers's escape technique Proceedings of the 19th international conference on Static Analysis, (352-369)
  94. Madhavan R, Ramalingam G and Vaswani K Modular heap analysis for higher-order programs Proceedings of the 19th international conference on Static Analysis, (370-387)
  95. Calvert P and Mycroft A Control flow analysis for the join calculus Proceedings of the 19th international conference on Static Analysis, (181-197)
  96. ACM
    Earl C, Sergey I, Might M and Van Horn D Introspective pushdown analysis of higher-order programs Proceedings of the 17th ACM SIGPLAN international conference on Functional programming, (177-188)
  97. ACM
    Nasre R Exploiting the structure of the constraint graph for efficient points-to analysis Proceedings of the 2012 international symposium on Memory Management, (121-132)
  98. ACM
    Midtgaard J (2012). Control-flow analysis of functional programs, ACM Computing Surveys, 44:3, (1-33), Online publication date: 1-Jun-2012.
  99. Tobita Y, Tsukada T and Kobayashi N Exact flow analysis by higher-order model checking Proceedings of the 11th international conference on Functional and Logic Programming, (275-289)
  100. Ryder B and Wiedermann B (2012). Language design and analyzability, Software—Practice & Experience, 42:1, (3-18), Online publication date: 1-Jan-2012.
  101. Might M and Van Horn D Family of abstract interpretations for static analysis of concurrent higher-order programs Proceedings of the 18th international conference on Static analysis, (180-197)
  102. Grabowski R, Hofmann M and Li K Type-Based enforcement of secure programming guidelines -- code injection prevention at SAP Proceedings of the 8th international conference on Formal Aspects of Security and Trust, (182-197)
  103. ACM
    Van Horn D and Might M (2011). Abstracting abstract machines, Communications of the ACM, 54:9, (101-109), Online publication date: 1-Sep-2011.
  104. ACM
    Xiao X and Zhang C Geometric encoding Proceedings of the 2011 International Symposium on Software Testing and Analysis, (188-198)
  105. ACM
    Guarnieri S, Pistoia M, Tripp O, Dolby J, Teilhet S and Berg R Saving the world wide web from vulnerable JavaScript Proceedings of the 2011 International Symposium on Software Testing and Analysis, (177-187)
  106. Tóth M and Bozó I Static analysis of complex software systems implemented in erlang Proceedings of the 4th Summer School conference on Central European Functional Programming School, (440-498)
  107. ACM
    Ducournau R (2011). Implementing statically typed object-oriented programming languages, ACM Computing Surveys, 43:3, (1-48), Online publication date: 1-Apr-2011.
  108. Guha A, Saftoiu C and Krishnamurthi S Typing local control and state using flow analysis Proceedings of the 20th European conference on Programming languages and systems: part of the joint European conferences on theory and practice of software, (256-275)
  109. ACM
    Ong C and Ramsay S Verifying higher-order functional programs with pattern-matching algebraic data types Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (587-598)
  110. ACM
    Prabhu T, Ramalingam S, Might M and Hall M EigenCFA Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (511-522)
  111. ACM
    Smaragdakis Y, Bravenboer M and Lhoták O Pick your contexts well Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (17-30)
  112. ACM
    Ong C and Ramsay S (2011). Verifying higher-order functional programs with pattern-matching algebraic data types, ACM SIGPLAN Notices, 46:1, (587-598), Online publication date: 26-Jan-2011.
  113. ACM
    Prabhu T, Ramalingam S, Might M and Hall M (2011). EigenCFA, ACM SIGPLAN Notices, 46:1, (511-522), Online publication date: 26-Jan-2011.
  114. ACM
    Smaragdakis Y, Bravenboer M and Lhoták O (2011). Pick your contexts well, ACM SIGPLAN Notices, 46:1, (17-30), Online publication date: 26-Jan-2011.
  115. ACM
    Vardoulakis D and Shivers O Ordering multiple continuations on the stack Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation, (13-22)
  116. ACM
    Sumner W and Zhang X Memory indexing Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering, (217-226)
  117. ACM
    Tobin-Hochstadt S and Felleisen M (2010). Logical types for untyped languages, ACM SIGPLAN Notices, 45:9, (117-128), Online publication date: 27-Sep-2010.
  118. ACM
    Holdermans S and Hage J (2010). Polyvariant flow analysis with higher-ranked polymorphic types and higher-order effect operators, ACM SIGPLAN Notices, 45:9, (63-74), Online publication date: 27-Sep-2010.
  119. ACM
    Van Horn D and Might M (2010). Abstracting abstract machines, ACM SIGPLAN Notices, 45:9, (51-62), Online publication date: 27-Sep-2010.
  120. ACM
    Tobin-Hochstadt S and Felleisen M Logical types for untyped languages Proceedings of the 15th ACM SIGPLAN international conference on Functional programming, (117-128)
  121. ACM
    Holdermans S and Hage J Polyvariant flow analysis with higher-ranked polymorphic types and higher-order effect operators Proceedings of the 15th ACM SIGPLAN international conference on Functional programming, (63-74)
  122. ACM
    Van Horn D and Might M Abstracting abstract machines Proceedings of the 15th ACM SIGPLAN international conference on Functional programming, (51-62)
  123. Might M Abstract interpreters for free Proceedings of the 17th international conference on Static analysis, (407-421)
  124. ACM
    Sallenave O and Ducournau R Efficient compilation of .NET programs for embedded systems Proceedings of the Workshop on the Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, (1-8)
  125. ACM
    Might M, Smaragdakis Y and Van Horn D (2010). Resolving and exploiting the k-CFA paradox, ACM SIGPLAN Notices, 45:6, (305-315), Online publication date: 12-Jun-2010.
  126. ACM
    Might M, Smaragdakis Y and Van Horn D Resolving and exploiting the k-CFA paradox Proceedings of the 31st ACM SIGPLAN Conference on Programming Language Design and Implementation, (305-315)
  127. Beringer L, Grabowski R and Hofmann M Verifying pointer and string analyses with region type systems Proceedings of the 16th international conference on Logic for programming, artificial intelligence, and reasoning, (82-102)
  128. Might M Shape analysis in the absence of pointers and structure Proceedings of the 11th international conference on Verification, Model Checking, and Abstract Interpretation, (263-278)
  129. Li X and Ogawa M (2009). An Ahead-of-time Yet Context-Sensitive Points-to Analysis for Java, Electronic Notes in Theoretical Computer Science (ENTCS), 253:5, (31-46), Online publication date: 1-Dec-2009.
  130. ACM
    Ducournau R, Morandat F and Privat J Empirical assessment of object-oriented implementations with multiple inheritance and static typing Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications, (41-60)
  131. ACM
    Ducournau R, Morandat F and Privat J (2009). Empirical assessment of object-oriented implementations with multiple inheritance and static typing, ACM SIGPLAN Notices, 44:10, (41-60), Online publication date: 25-Oct-2009.
  132. Lundberg J, Gutzmann T, Edvinsson M and Löwe W (2009). Fast and precise points-to analysis, Information and Software Technology, 51:10, (1428-1439), Online publication date: 1-Oct-2009.
  133. ACM
    Dimoulas C, Pucella R and Felleisen M Future contracts Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming, (195-206)
  134. ACM
    Lövei L Automated module interface upgrade Proceedings of the 8th ACM SIGPLAN workshop on ERLANG, (11-22)
  135. Danvy O and Millikin K (2009). Refunctionalization at work, Science of Computer Programming, 74:8, (534-549), Online publication date: 1-Jun-2009.
  136. Tóth M, Bozó I, Horváth Z, Lövei L, Tejfel M and Kozsik T Impact analysis of erlang programs using behaviour dependency graphs Proceedings of the Third summer school conference on Central European functional programming school, (372-390)
  137. Grothoff C (2008). The Runabout, Software—Practice & Experience, 38:14, (1531-1560), Online publication date: 30-Nov-2008.
  138. ACM
    Van Horn D and Mairson H (2008). Deciding kCFA is complete for EXPTIME, ACM SIGPLAN Notices, 43:9, (275-282), Online publication date: 27-Sep-2008.
  139. ACM
    Van Horn D and Mairson H Deciding kCFA is complete for EXPTIME Proceedings of the 13th ACM SIGPLAN international conference on Functional programming, (275-282)
  140. Fisher D and Shivers O (2008). Building language towers with ziggurat, Journal of Functional Programming, 18:5-6, (707-780), Online publication date: 1-Sep-2008.
  141. Might M and Shivers O (2008). Exploiting reachability and cardinality in higher-order flow analysis, Journal of Functional Programming, 18:5-6, (821-864), Online publication date: 1-Sep-2008.
  142. Midtgaard J and Jensen T A Calculational Approach to Control-Flow Analysis by Abstract Interpretation Proceedings of the 15th international symposium on Static Analysis, (347-362)
  143. Van Horn D and Mairson H Flow Analysis, Linearity, and PTIME Proceedings of the 15th international symposium on Static Analysis, (255-269)
  144. ACM
    Maule A, Emmerich W and Rosenblum D Impact analysis of database schema changes Proceedings of the 30th international conference on Software engineering, (451-460)
  145. Ong C Verification of higher-order computation Proceedings of the Theory and practice of software, 17th European conference on Programming languages and systems, (299-306)
  146. ACM
    Tobin-Hochstadt S and Felleisen M (2008). The design and implementation of typed scheme, ACM SIGPLAN Notices, 43:1, (395-406), Online publication date: 14-Jan-2008.
  147. ACM
    Tobin-Hochstadt S and Felleisen M The design and implementation of typed scheme Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (395-406)
  148. Shroff P, Skalka C and Smith S The nuggetizer Proceedings of the 5th Asian conference on Programming languages and systems, (2-18)
  149. ACM
    Van Horn D and Mairson H Relating complexity and precision in control flow analysis Proceedings of the 12th ACM SIGPLAN international conference on Functional programming, (85-96)
  150. ACM
    Sereni D Termination analysis and call graph construction for higher-order functional programs Proceedings of the 12th ACM SIGPLAN international conference on Functional programming, (71-84)
  151. ACM
    Van Horn D and Mairson H (2007). Relating complexity and precision in control flow analysis, ACM SIGPLAN Notices, 42:9, (85-96), Online publication date: 1-Oct-2007.
  152. ACM
    Sereni D (2007). Termination analysis and call graph construction for higher-order functional programs, ACM SIGPLAN Notices, 42:9, (71-84), Online publication date: 1-Oct-2007.
  153. ACM
    Foley S Tactics for minimal interference from class loading in real-time Java™ Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems, (23-32)
  154. Zhang W and Ryder B (2007). Automatic construction of accurate application call graph with library call abstraction for Java, Journal of Software Maintenance and Evolution: Research and Practice, 19:4, (231-252), Online publication date: 1-Jul-2007.
  155. ACM
    Ramanathan M, Grama A and Jagannathan S Static specification inference using predicate mining Proceedings of the 28th ACM SIGPLAN Conference on Programming Language Design and Implementation, (123-134)
  156. ACM
    Zhang W and Ryder B Discovering accurate interclass test dependences Proceedings of the 7th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering, (55-62)
  157. ACM
    Ramanathan M, Grama A and Jagannathan S (2007). Static specification inference using predicate mining, ACM SIGPLAN Notices, 42:6, (123-134), Online publication date: 10-Jun-2007.
  158. Might M and Shivers O (2007). Analyzing the environment structure of higher-order languages using frame strings, Theoretical Computer Science, 375:1-3, (137-168), Online publication date: 20-Apr-2007.
  159. Jones N and Andersen N (2007). Flow analysis of lazy higher-order functional programs, Theoretical Computer Science, 375:1-3, (120-136), Online publication date: 20-Apr-2007.
  160. ACM
    Kumar R and Chakraborty S (2007). Precise static type analysis for object oriented programs, ACM SIGPLAN Notices, 42:2, (17-26), Online publication date: 1-Feb-2007.
  161. ACM
    Reppy J and Xiao Y Specialization of CML message-passing primitives Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (315-326)
  162. ACM
    Might M Logic-flow analysis of higher-order programs Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (185-198)
  163. ACM
    Reppy J and Xiao Y (2007). Specialization of CML message-passing primitives, ACM SIGPLAN Notices, 42:1, (315-326), Online publication date: 17-Jan-2007.
  164. ACM
    Might M (2007). Logic-flow analysis of higher-order programs, ACM SIGPLAN Notices, 42:1, (185-198), Online publication date: 17-Jan-2007.
  165. Hashimoto M A method of safety analysis for runtime code update Proceedings of the 11th Asian computing science conference on Advances in computer science: secure software and related issues, (60-74)
  166. ACM
    Fisher D and Shivers O Static analysis for syntax objects Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming, (111-121)
  167. ACM
    Might M and Shivers O Improving flow analyses via ΓCFA Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming, (13-25)
  168. ACM
    Fisher D and Shivers O (2006). Static analysis for syntax objects, ACM SIGPLAN Notices, 41:9, (111-121), Online publication date: 16-Sep-2006.
  169. ACM
    Might M and Shivers O (2006). Improving flow analyses via ΓCFA, ACM SIGPLAN Notices, 41:9, (13-25), Online publication date: 16-Sep-2006.
  170. ACM
    Reppy J Type-sensitive control-flow analysis Proceedings of the 2006 workshop on ML, (74-83)
  171. Shivers O and Fisher D (2006). Multi-return function call, Journal of Functional Programming, 16:4-5, (547-582), Online publication date: 1-Jul-2006.
  172. ACM
    Might M and Shivers O (2006). Environment analysis via ΔCFA, ACM SIGPLAN Notices, 41:1, (127-140), Online publication date: 12-Jan-2006.
  173. ACM
    Might M and Shivers O Environment analysis via ΔCFA Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (127-140)
  174. Sereni D and Jones N Termination analysis of higher-order functional programs Proceedings of the Third Asian conference on Programming Languages and Systems, (281-297)
  175. ACM
    Spoon S and Shivers O Dynamic data polyvariance using source-tagged classes Proceedings of the 2005 symposium on Dynamic languages, (35-48)
  176. ACM
    Balaban I, Tip F and Fuhrer R Refactoring support for class library migration Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (265-279)
  177. ACM
    Balaban I, Tip F and Fuhrer R (2005). Refactoring support for class library migration, ACM SIGPLAN Notices, 40:10, (265-279), Online publication date: 12-Oct-2005.
  178. Glew N, Palsberg J and Grothoff C Type-safe optimisation of plugin architectures Proceedings of the 12th international conference on Static Analysis, (135-154)
  179. Mock M, Atkinson D, Chambers C and Eggers S (2005). Program Slicing with Dynamic Points-To Sets, IEEE Transactions on Software Engineering, 31:8, (657-678), Online publication date: 1-Aug-2005.
  180. Danvy O and Nielsen L (2005). CPS transformation of beta-redexes, Information Processing Letters, 94:5, (217-224), Online publication date: 15-Jun-2005.
  181. Fu C, Milanova A, Ryder B and Wonnacott D (2005). Robustness Testing of Java Server Applications, IEEE Transactions on Software Engineering, 31:4, (292-311), Online publication date: 1-Apr-2005.
  182. Brylow D and Palsberg J (2004). Deadline Analysis of Interrupt-Driven Software, IEEE Transactions on Software Engineering, 30:10, (634-655), Online publication date: 1-Oct-2004.
  183. Danvy O A rational deconstruction of landin's SECD machine Proceedings of the 16th international conference on Implementation and Application of Functional Languages, (52-71)
  184. ACM
    Fu C, Ryder B, Milanova A and Wonnacott D Testing of java web services for robustness Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis, (23-34)
  185. ACM
    Dor N, Adams S, Das M and Yang Z Software validation via scalable path-sensitive value flow analysis Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis, (12-22)
  186. ACM
    Rountev A, Kagan S and Gibas M Static and dynamic analysis of call chains in java Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis, (1-11)
  187. ACM
    Fu C, Ryder B, Milanova A and Wonnacott D (2004). Testing of java web services for robustness, ACM SIGSOFT Software Engineering Notes, 29:4, (23-34), Online publication date: 1-Jul-2004.
  188. ACM
    Dor N, Adams S, Das M and Yang Z (2004). Software validation via scalable path-sensitive value flow analysis, ACM SIGSOFT Software Engineering Notes, 29:4, (12-22), Online publication date: 1-Jul-2004.
  189. ACM
    Rountev A, Kagan S and Gibas M (2004). Static and dynamic analysis of call chains in java, ACM SIGSOFT Software Engineering Notes, 29:4, (1-11), Online publication date: 1-Jul-2004.
  190. ACM
    Whaley J and Lam M (2004). Cloning-based context-sensitive pointer alias analysis using binary decision diagrams, ACM SIGPLAN Notices, 39:6, (131-144), Online publication date: 9-Jun-2004.
  191. ACM
    Whaley J and Lam M Cloning-based context-sensitive pointer alias analysis using binary decision diagrams Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation, (131-144)
  192. Rountev A, Milanova A and Ryder B (2004). Fragment Class Analysis for Testing of Polymorphism in Java Software, IEEE Transactions on Software Engineering, 30:6, (372-387), Online publication date: 1-Jun-2004.
  193. ACM
    Flanagan C, Sabry A, Duba B and Felleisen M (2004). The essence of compiling with continuations, ACM SIGPLAN Notices, 39:4, (502-514), Online publication date: 1-Apr-2004.
  194. ACM
    Shivers O (2004). Higher-order control-flow analysis in retrospect, ACM SIGPLAN Notices, 39:4, (257-269), Online publication date: 1-Apr-2004.
  195. ACM
    Kranz D, Kelsey R, Rees J, Hudak P, Philbin J and Adams N (2004). Orbit, ACM SIGPLAN Notices, 39:4, (175-191), Online publication date: 1-Apr-2004.
  196. ACM
    von Behren R, Condit J, Zhou F, Necula G and Brewer E (2003). Capriccio, ACM SIGOPS Operating Systems Review, 37:5, (268-281), Online publication date: 1-Dec-2003.
  197. ACM
    von Behren R, Condit J, Zhou F, Necula G and Brewer E Capriccio Proceedings of the nineteenth ACM symposium on Operating systems principles, (268-281)
  198. ACM
    Brylow D and Palsberg J (2003). Deadline analysis of interrupt-driven software, ACM SIGSOFT Software Engineering Notes, 28:5, (198-207), Online publication date: 1-Sep-2003.
  199. ACM
    Brylow D and Palsberg J Deadline analysis of interrupt-driven software Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering, (198-207)
  200. ACM
    Palacz K, Baker J, Flack C, Grothoff C, Yamauchi H and Vitek J Engineering a customizable intermediate representation Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators, (67-76)
  201. Rountev A, Milanova A and Ryder B Fragment class analysis for testing of polymorphism in Java software Proceedings of the 25th International Conference on Software Engineering, (210-220)
  202. Monnier S and Shao Z (2003). Inlining as staged computation, Journal of Functional Programming, 13:3, (647-676), Online publication date: 1-May-2003.
  203. Fischbach A and Hannan J (2003). Specification and correctness of lambda lifting, Journal of Functional Programming, 13:3, (509-543), Online publication date: 1-May-2003.
  204. Ryder B Dimensions of precision in reference analysis of object-oriented programming languages Proceedings of the 12th international conference on Compiler construction, (126-137)
  205. ACM
    Mock M, Atkinson D, Chambers C and Eggers S Improving program slicing with dynamic points-to data Proceedings of the 10th ACM SIGSOFT symposium on Foundations of software engineering, (71-80)
  206. ACM
    Mock M, Atkinson D, Chambers C and Eggers S (2002). Improving program slicing with dynamic points-to data, ACM SIGSOFT Software Engineering Notes, 27:6, (71-80), Online publication date: 1-Nov-2002.
  207. Reppy J (2002). Optimizing Nested Loops Using Local CPS Conversion, Higher-Order and Symbolic Computation, 15:2-3, (161-180), Online publication date: 1-Sep-2002.
  208. Yi K and Ryu S (2002). A cost-effective estimation of uncaught exceptions in standard ML programs, Theoretical Computer Science, 277:1-2, (185-217), Online publication date: 28-Apr-2002.
  209. Jensen T Types in program analysis The essence of computation, (204-222)
  210. Souter A and Pollock L Incremental Call Graph Reanalysis for Object-Oriented Software Maintenance Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
  211. ACM
    Neubauer M and Sperber M (2001). Down with Emacs Lisp, ACM SIGPLAN Notices, 36:10, (38-49), Online publication date: 1-Oct-2001.
  212. ACM
    Dimock A, Westmacott I, Muller R, Turbak F and Wells J (2001). Functioning without closure, ACM SIGPLAN Notices, 36:10, (14-25), Online publication date: 1-Oct-2001.
  213. ACM
    Neubauer M and Sperber M Down with Emacs Lisp Proceedings of the sixth ACM SIGPLAN international conference on Functional programming, (38-49)
  214. ACM
    Dimock A, Westmacott I, Muller R, Turbak F and Wells J Functioning without closure Proceedings of the sixth ACM SIGPLAN international conference on Functional programming, (14-25)
  215. ACM
    Danvy O and Nielsen L Defunctionalization at work Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming, (162-174)
  216. Kobayashi N (2001). Type-Based Useless-Variable Elimination, Higher-Order and Symbolic Computation, 14:2-3, (221-260), Online publication date: 1-Sep-2001.
  217. ACM
    Hind M Pointer analysis Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering, (54-61)
  218. ACM
    Palsberg J Type-based analysis and applications Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering, (20-27)
  219. Barthe G and Serpette B Static reduction analysis for imperative object oriented languages Proceedings of the 7th international conference on Logic for programming and automated reasoning, (344-361)
  220. ACM
    Tip F and Palsberg J (2000). Scalable propagation-based call graph construction algorithms, ACM SIGPLAN Notices, 35:10, (281-293), Online publication date: 1-Oct-2000.
  221. ACM
    Sundaresan V, Hendren L, Razafimahefa C, Vallée-Rai R, Lam P, Gagnon E and Godin C (2000). Practical virtual method call resolution for Java, ACM SIGPLAN Notices, 35:10, (264-280), Online publication date: 1-Oct-2000.
  222. ACM
    Tip F and Palsberg J Scalable propagation-based call graph construction algorithms Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (281-293)
  223. ACM
    Sundaresan V, Hendren L, Razafimahefa C, Vallée-Rai R, Lam P, Gagnon E and Godin C Practical virtual method call resolution for Java Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (264-280)
  224. Hannan J and Hicks P (2000). Higher-Order UnCurrying, Higher-Order and Symbolic Computation, 13:3, (179-216), Online publication date: 1-Sep-2000.
  225. Di Blasio P, Fisher K and Talcott C (2000). A Control-Flow Analysis for a Calculus of Concurrent Objects, IEEE Transactions on Software Engineering, 26:7, (617-634), Online publication date: 1-Jul-2000.
  226. ACM
    Kobayashi N Type-based useless variable elimination Proceedings of the 2000 ACM SIGPLAN workshop on Partial evaluation and semantics-based program manipulation, (84-93)
  227. ACM
    Kobayashi N (1999). Type-based useless variable elimination, ACM SIGPLAN Notices, 34:11, (84-93), Online publication date: 1-Nov-1999.
  228. ACM
    Wand M and Siveroni I Constraint systems for useless variable elimination Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (291-302)
  229. ACM
    Pessaux F and Leroy X Type-based analysis of uncaught exceptions Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (276-290)
  230. ACM
    Shao Z (1998). Typed cross-module compilation, ACM SIGPLAN Notices, 34:1, (141-152), Online publication date: 1-Jan-1999.
  231. ACM
    Benton N, Kennedy A and Russell G (1998). Compiling standard ML to Java bytecodes, ACM SIGPLAN Notices, 34:1, (129-140), Online publication date: 1-Jan-1999.
  232. Reynolds J (1998). Definitional Interpreters Revisited, Higher-Order and Symbolic Computation, 11:4, (355-361), Online publication date: 1-Dec-1998.
  233. ACM
    Palsberg J (1998). Equality-based flow analysis versus recursive types, ACM Transactions on Programming Languages and Systems, 20:6, (1251-1264), Online publication date: 1-Nov-1998.
  234. ACM
    Dolby J and Chien A (1998). An evaluation of automatic object inline allocation techniques, ACM SIGPLAN Notices, 33:10, (1-20), Online publication date: 1-Oct-1998.
  235. ACM
    Dolby J and Chien A An evaluation of automatic object inline allocation techniques Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (1-20)
  236. ACM
    Shao Z Typed cross-module compilation Proceedings of the third ACM SIGPLAN international conference on Functional programming, (141-152)
  237. ACM
    Benton N, Kennedy A and Russell G Compiling standard ML to Java bytecodes Proceedings of the third ACM SIGPLAN international conference on Functional programming, (129-140)
  238. ACM
    Ashley J and Dybvig R (1998). A practical and flexible flow analysis for higher-order languages, ACM Transactions on Programming Languages and Systems, 20:4, (845-868), Online publication date: 1-Jul-1998.
  239. Palsberg J Eta-Redexes in Partial Evaluation Partial Evaluation - Practice and Theory, DIKU 1998 International Summer School, (356-366)
  240. ACM
    Cheng P, Harper R and Lee P (1998). Generational stack collection and profile-driven pretenuring, ACM SIGPLAN Notices, 33:5, (162-173), Online publication date: 1-May-1998.
  241. ACM
    Cheng P, Harper R and Lee P Generational stack collection and profile-driven pretenuring Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation, (162-173)
  242. Schmidt D (1998). Trace-Based Abstract Interpretation of Operational Semantics, Lisp and Symbolic Computation, 10:3, (237-271), Online publication date: 1-May-1998.
  243. ACM
    Jagannathan S, Thiemann P, Weeks S and Wright A Single and loving it Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (329-341)
  244. ACM
    DeFouw G, Grove D and Chambers C Fast interprocedural class analysis Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (222-236)
  245. ACM
    Palsberg J and Pavlopoulou C From polyvariant flow information to intersection and union types Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (197-208)
  246. ACM
    Schmidt D Data flow analysis is model checking of abstract interpretations Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (38-48)
  247. ACM
    Wright A and Jagannathan S (1998). Polymorphic splitting, ACM Transactions on Programming Languages and Systems, 20:1, (166-207), Online publication date: 1-Jan-1998.
  248. ACM
    Danvy O and Schultz U (1997). Lambda-dropping, ACM SIGPLAN Notices, 32:12, (90-106), Online publication date: 1-Dec-1997.
  249. ACM
    Danvy O and Schultz U Lambda-dropping Proceedings of the 1997 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation, (90-106)
  250. ACM
    Grove D, DeFouw G, Dean J and Chambers C (1997). Call graph construction in object-oriented languages, ACM SIGPLAN Notices, 32:10, (108-124), Online publication date: 9-Oct-1997.
  251. ACM
    Grove D, DeFouw G, Dean J and Chambers C Call graph construction in object-oriented languages Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (108-124)
  252. ACM
    Ashley J (1997). The effectiveness of flow analysis for inlining, ACM SIGPLAN Notices, 32:8, (99-111), Online publication date: 1-Aug-1997.
  253. ACM
    Dimock A, Muller R, Turbak F and Wells J (1997). Strongly typed flow-directed representation transformations (extended abstract), ACM SIGPLAN Notices, 32:8, (11-24), Online publication date: 1-Aug-1997.
  254. ACM
    Banerjee A (1997). A modular, polyvariant and type-based closure analysis, ACM SIGPLAN Notices, 32:8, (1-10), Online publication date: 1-Aug-1997.
  255. ACM
    Ashley J The effectiveness of flow analysis for inlining Proceedings of the second ACM SIGPLAN international conference on Functional programming, (99-111)
  256. ACM
    Dimock A, Muller R, Turbak F and Wells J Strongly typed flow-directed representation transformations (extended abstract) Proceedings of the second ACM SIGPLAN international conference on Functional programming, (11-24)
  257. ACM
    Banerjee A A modular, polyvariant and type-based closure analysis Proceedings of the second ACM SIGPLAN international conference on Functional programming, (1-10)
  258. ACM
    Deutsch A On the complexity of escape analysis Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (358-371)
  259. ACM
    Palsberg J (1996). Compiler technology for object-oriented languages, ACM Computing Surveys, 28:4es, (161-es), Online publication date: 1-Dec-1996.
  260. Grove D A comparison of algorithms for interprocedural class analysis Proceedings of the 1996 conference of the Centre for Advanced Studies on Collaborative research
  261. ACM
    Diwan A, Moss J and McKinley K (1996). Simple and effective analysis of statically-typed object-oriented programs, ACM SIGPLAN Notices, 31:10, (292-305), Online publication date: 1-Oct-1996.
  262. ACM
    Diwan A, Moss J and McKinley K Simple and effective analysis of statically-typed object-oriented programs Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (292-305)
  263. Atkinson D and Griswold W The design of whole-program analysis tools Proceedings of the 18th international conference on Software engineering, (16-27)
  264. ACM
    Jagannathan S and Wright A (1996). Flow-directed inlining, ACM SIGPLAN Notices, 31:5, (193-205), Online publication date: 1-May-1996.
  265. ACM
    Flanagan C, Flatt M, Krishnamurthi S, Weirich S and Felleisen M (1996). Catching bugs in the web of program invariants, ACM SIGPLAN Notices, 31:5, (23-32), Online publication date: 1-May-1996.
  266. ACM
    Jagannathan S and Wright A Flow-directed inlining Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation, (193-205)
  267. ACM
    Flanagan C, Flatt M, Krishnamurthi S, Weirich S and Felleisen M Catching bugs in the web of program invariants Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation, (23-32)
  268. ACM
    Colby C and Lee P Trace-based program analysis Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (195-207)
  269. ACM
    Ashley J A practical and flexible flow analysis for higher-order languages Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (184-194)
  270. Grove D The impact of interprocedural class analysis on optimization Proceedings of the 1995 conference of the Centre for Advanced Studies on Collaborative research
  271. ACM
    Grove D, Dean J, Garrett C and Chambers C (1995). Profile-guided receiver class prediction, ACM SIGPLAN Notices, 30:10, (108-123), Online publication date: 17-Oct-1995.
  272. ACM
    Grove D, Dean J, Garrett C and Chambers C Profile-guided receiver class prediction Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications, (108-123)
  273. ACM
    Henglein F and Rehof J Safe polymorphic type inference for a dynamically typed language Proceedings of the seventh international conference on Functional programming languages and computer architecture, (192-203)
  274. ACM
    Kelsey R (1995). A correspondence between continuation passing style and static single assignment form, ACM SIGPLAN Notices, 30:3, (13-22), Online publication date: 1-Mar-1995.
  275. ACM
    Kelsey R A correspondence between continuation passing style and static single assignment form Papers from the 1995 ACM SIGPLAN workshop on Intermediate representations, (13-22)
  276. ACM
    Jagannathan S and Weeks S A unified treatment of flow analysis in higher-order languages Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (393-407)
  277. ACM
    Flanagan C and Felleisen M The semantics of future and its use in program optimization Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (209-220)
  278. ACM
    Emami M, Ghiya R and Hendren L Context-sensitive interprocedural points-to analysis in the presence of function pointers Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation, (242-256)
  279. ACM
    Deutsch A Interprocedural may-alias analysis for pointers Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation, (230-241)
  280. ACM
    Sabry A and Felleisen M Is continuation-passing useful for data flow analysis? Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation, (1-12)
  281. ACM
    Wright A and Cartwright R (1994). A practical soft type system for Scheme, ACM SIGPLAN Lisp Pointers, VII:3, (250-262), Online publication date: 1-Jul-1994.
  282. ACM
    Shao Z and Appel A (1994). Space-efficient closure representations, ACM SIGPLAN Lisp Pointers, VII:3, (150-161), Online publication date: 1-Jul-1994.
  283. ACM
    Wright A and Cartwright R A practical soft type system for Scheme Proceedings of the 1994 ACM conference on LISP and functional programming, (250-262)
  284. ACM
    Shao Z and Appel A Space-efficient closure representations Proceedings of the 1994 ACM conference on LISP and functional programming, (150-161)
  285. ACM
    Emami M, Ghiya R and Hendren L (1994). Context-sensitive interprocedural points-to analysis in the presence of function pointers, ACM SIGPLAN Notices, 29:6, (242-256), Online publication date: 1-Jun-1994.
  286. ACM
    Deutsch A (1994). Interprocedural may-alias analysis for pointers, ACM SIGPLAN Notices, 29:6, (230-241), Online publication date: 1-Jun-1994.
  287. ACM
    Sabry A and Felleisen M (1994). Is continuation-passing useful for data flow analysis?, ACM SIGPLAN Notices, 29:6, (1-12), Online publication date: 1-Jun-1994.
  288. ACM
    Wand M and Steckler P Selective and lightweight closure conversion Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (435-445)
  289. ACM
    Griswold W Direct update of data flow representations for a meaning-preserving program restructuring tool Proceedings of the 1st ACM SIGSOFT symposium on Foundations of software engineering, (42-55)
  290. ACM
    Griswold W (1993). Direct update of data flow representations for a meaning-preserving program restructuring tool, ACM SIGSOFT Software Engineering Notes, 18:5, (42-55), Online publication date: 1-Dec-1993.
  291. ACM
    Flanagan C, Sabry A, Duba B and Felleisen M The essence of compiling with continuations Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation, (237-247)
  292. ACM
    Flanagan C, Sabry A, Duba B and Felleisen M (1993). The essence of compiling with continuations, ACM SIGPLAN Notices, 28:6, (237-247), Online publication date: 1-Jun-1993.
  293. ACM
    Lakhotia A Constructing call multigraphs using dependence graphs Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (273-284)
  294. ACM
    Lawall J and Danvy O Separating stages in the continuation-passing style transformation Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (124-136)
  295. ACM
    Huelsbergen L and Larus J Dynamic program parallelization Proceedings of the 1992 ACM conference on LISP and functional programming, (311-323)
  296. ACM
    Sabry A and Felleisen M Reasoning about programs in continuation-passing style. Proceedings of the 1992 ACM conference on LISP and functional programming, (288-298)
  297. ACM
    Rozas G Taming the Y operator Proceedings of the 1992 ACM conference on LISP and functional programming, (226-234)
  298. ACM
    Huelsbergen L and Larus J (1992). Dynamic program parallelization, ACM SIGPLAN Lisp Pointers, V:1, (311-323), Online publication date: 1-Jan-1992.
  299. ACM
    Sabry A and Felleisen M (1992). Reasoning about programs in continuation-passing style., ACM SIGPLAN Lisp Pointers, V:1, (288-298), Online publication date: 1-Jan-1992.
  300. ACM
    Rozas G (1992). Taming the Y operator, ACM SIGPLAN Lisp Pointers, V:1, (226-234), Online publication date: 1-Jan-1992.
  301. ACM
    Shivers O (1991). The semantics of Scheme control-flow analysis, ACM SIGPLAN Notices, 26:9, (190-198), Online publication date: 1-Sep-1991.
  302. ACM
    Shivers O The semantics of Scheme control-flow analysis Proceedings of the 1991 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation, (190-198)
Contributors
  • Epic Games, Inc.

Recommendations