1992
DOI: 10.1145/161494.161517
|View full text |Cite
|
Sign up to set email alerts
|

Unreachable procedures in object-oriented programming

Abstract: Unreachable procedures are procedures that can never be invoked. Their existence may adversely affect the performance of a program. Unfortunately, their detection requires the entire program to be present. Using a long-time code modification system, we analyze large, linked, program modules of C++, C, and Fortran. We find that C++ programs using object-oriented programming style contain a large fraction of unreachable procedure code. In contrast, C and Fortran programs have a low and essentially constant fract… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

1
11
0
1

Year Published

1999
1999
2014
2014

Publication Types

Select...
5
2

Relationship

0
7

Authors

Journals

citations
Cited by 49 publications
(14 citation statements)
references
References 2 publications
1
11
0
1
Order By: Relevance
“…We presented a family of low-cost algorithms for constructing call graphs of Scala programs, in the spirit of Name-Based Resolution (RA) [26], Class Hierarchy Analysis (CHA) [9] and Rapid Type Analysis (RTA) [6]. Our algorithms consider how traits are combined in a Scala program to improve precision and handle the full Scala language, including features such as abstract type members, closures, and path-dependent types.…”
Section: Discussionmentioning
confidence: 99%
See 3 more Smart Citations
“…We presented a family of low-cost algorithms for constructing call graphs of Scala programs, in the spirit of Name-Based Resolution (RA) [26], Class Hierarchy Analysis (CHA) [9] and Rapid Type Analysis (RTA) [6]. Our algorithms consider how traits are combined in a Scala program to improve precision and handle the full Scala language, including features such as abstract type members, closures, and path-dependent types.…”
Section: Discussionmentioning
confidence: 99%
“…Our focus is on adapting low-cost algorithms to Scala, in particular Name-Based Resolution (RA) [26], Class Hierarchy Analysis (CHA) [9], and Rapid Type Analysis (RTA) [6]. We consider how key Scala features such as traits, abstract type members, and closures can be accommodated, and present a family of successively more precise algorithms.…”
Section: Introductionmentioning
confidence: 99%
See 2 more Smart Citations
“…Such information is not available in native binary programs. Srivastava [1992] has studied the removal of unreachable procedures in objectoriented programming environments as well.…”
Section: Other Program Compaction Techniquesmentioning
confidence: 99%