1987
DOI: 10.1007/3-540-18317-5_22
|View full text |Cite
|
Sign up to set email alerts
|

Detecting sharing of partial applications in functional programs

Abstract: A b s t r a c tA method is presented for detecting sharing of partial function applications in higher order functional programs. Such sharing occurs when there are several references to variables that are bound to a particular function application. In order to provide an interprocedural analysis, a non-standard semantics is defined for a lazy, higher-order functional language such that the meaning of a program is information about the sharing that occurred during its execution. An abstraction of this non-stand… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
16
0

Year Published

1987
1987
2017
2017

Publication Types

Select...
4
3
1

Relationship

1
7

Authors

Journals

citations
Cited by 25 publications
(16 citation statements)
references
References 8 publications
0
16
0
Order By: Relevance
“…Early work employed a forward abstract interpretation framework (Goldberg 1987;Hudak 1986). Since the forward abstract interpreter makes assumptions about arguments of a function it examines, the abstract interpretation can account for multiple combinations of those and may, therefore, be extremely expensive to compute.…”
Section: Other Related Workmentioning
confidence: 99%
“…Early work employed a forward abstract interpretation framework (Goldberg 1987;Hudak 1986). Since the forward abstract interpreter makes assumptions about arguments of a function it examines, the abstract interpretation can account for multiple combinations of those and may, therefore, be extremely expensive to compute.…”
Section: Other Related Workmentioning
confidence: 99%
“…In non-strict functional languages, sharing can cause 'memory leaks' [6]. Therefore, similar as for CSE, additional dynamic analyses like binding-time analysis [28], and heuristics to restrict sharing in cases when it is disadvantageous [10,29] are advisable.…”
Section: Applicationsmentioning
confidence: 99%
“…While static analysis methods for preventing sharing that may be disadvantageous at run-time can be adapted from CSE to the maximal-sharing method (see Sec. 9.1), this has yet to be investigated for binding-time analysis [28] and a sharing analysis of partial applications [10].…”
Section: Applicationsmentioning
confidence: 99%
“…For the 'dynamic' part, a predictive syntactic program analysis has been proposed for fine-tuning sharing of partial applications in supercombinator translations [10].…”
Section: Recognising Potential For Sharingmentioning
confidence: 99%