Proceedings of the 16th ACM SIGPLAN International Conference on Functional Programming 2011
DOI: 10.1145/2034773.2034785
|View full text |Cite
|
Sign up to set email alerts
|

Pushdown flow analysis of first-class control

Abstract: Pushdown models are better than control-flow graphs for higherorder flow analysis. They faithfully model the call/return structure of a program, which results in fewer spurious flows and increased precision. However, pushdown models require that calls and returns in the analyzed program nest properly. As a result, they cannot be used to analyze language constructs that break call/return nesting such as generators, coroutines, call/cc, etc.In this paper, we extend the CFA2 flow analysis to create the first push… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
7
0

Year Published

2013
2013
2023
2023

Publication Types

Select...
2
2
2

Relationship

0
6

Authors

Journals

citations
Cited by 14 publications
(7 citation statements)
references
References 18 publications
0
7
0
Order By: Relevance
“…Using the same approach, we think -CFA [10,29] could be obtained using a different abstraction on traces, that would keep frames instead of call sites. The question remains open whether we could also derive the more recent pushdown CFAs [6,7,11,44,45]. This could be achieved possibly by employing more precise abstractions.…”
Section: Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…Using the same approach, we think -CFA [10,29] could be obtained using a different abstraction on traces, that would keep frames instead of call sites. The question remains open whether we could also derive the more recent pushdown CFAs [6,7,11,44,45]. This could be achieved possibly by employing more precise abstractions.…”
Section: Discussionmentioning
confidence: 99%
“…[4] demonstrate that the łabstracting abstract machinesž approach carry over to more high-level definitional interpreters that are not expressed as state machines. In particular, they show that this approach can reconstruct the CFA2 control flow analyses [44,45] based on push-down structures that also computes precise return information.…”
Section: Related Workmentioning
confidence: 99%
“…We do not discuss call/cc in detail, since we believe there are no significant barriers to adapting the techniques of Vardoulakis and Shivers (2011) to the direct-style setting, given related work in Johnson and Van Horn (2013). Languages with exceptions fit within the pushdown model since a throw can be modeled as "pop until first catch.…”
Section: Contributionsmentioning
confidence: 99%
“…CFA2 has a follow-up that sacrifices its complete abstraction with the machine that only abstracts bindings in order to handle first-class control (Vardoulakis and Shivers, 2011). We do not have an analogous construction since loss of complete abstraction was an antigoal of this work.…”
Section: Related Workmentioning
confidence: 99%
“…This paper offers an automata-theoretic perspective on this challenge, providing a fresh set of tools that contrast with previous intersection-type approaches. Techniques based on pushdown automata have previously visited ICFP, such as the approximate higher-order controlflow analysis CFA2 [40], but our aims are a bit different in that we wish to match the expressivity of HORS. Consequently we require a more sophisticated notion of pushdown automaton.…”
Section: Introductionmentioning
confidence: 99%