• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Eliminating dead code on recursive data (1999)

Cached

  • Download as a PDF

Download Links

  • [www.cs.sunysb.edu]
  • [www.cs.stonybrook.edu]
  • [ftp.cs.sunysb.edu]
  • [ftp.cs.indiana.edu]
  • [ftp.cs.indiana.edu]
  • [ftp.cs.indiana.edu]
  • [ftp.cs.indiana.edu]
  • [ftp.cs.indiana.edu]
  • [www.cs.indiana.edu]
  • [www.cs.indiana.edu]
  • [www.cs.sunysb.edu]
  • [www.cs.stonybrook.edu]

  • Other Repositories/Bibliography

  • DBLP
  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Yanhong A. Liu , Scott D. Stoller
Venue:Science of Computer Programming
Citations:14 - 4 self
  • Summary
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@INPROCEEDINGS{Liu99eliminatingdead,
    author = {Yanhong A. Liu and Scott D. Stoller},
    title = {Eliminating dead code on recursive data},
    booktitle = {Science of Computer Programming},
    year = {1999},
    pages = {211--231},
    publisher = {Springer-Verlag}
}

Years of Citing Articles

Bookmark

citeulike Connotea Bibsonomy Del.icio.us Digg Reddit

OpenURL

 

Abstract

Abstract. This paper describes a general and powerful method for dead code analysis and elimination in the presence of recursive data constructions. We represent partially dead recursive data using liveness patterns based on general regular tree grammars extended with the notion of live and dead, and we formulate the analysis as computing liveness patterns at all program points based on program semantics. This analysis yields a most precise liveness pattern for the data at each program point, which is signi cantly more precise than results from previous methods. The analysis algorithm takes cubic time in terms of the size of the program in the worst case but is very e cient in practice, as shown by our prototype implementation. The analysis results are used to identify and eliminate dead code. The general framework for representing and analyzing properties of recursive data structures using general regular tree grammars applies to other analyses as well. 1

Citations

1497 The Definition of Standard ML - Milner, Tofte, et al. - 1990
1129 Program slicing - Weiser - 1981
749 Efficiently computing static single assignment form and the control dependence graph - Cytron, Ferrante, et al. - 1991
733 The Java Programming Language - Arnold, Gosling - 1996
572 A survey of program slicing techniques - Tip - 1995
375 Deforestation: Transforming programs to eliminate trees - Wadler - 1990
281 Solving shape-analysis problems in languages with destructive updating - Sagiv, Reps, et al. - 1998
211 Tree Automata. Akademiai Kiado - Gecseg, Steinby - 1984
186 Flow analysis and optimization of Lisplike structures - Muchnick, Jones - 1981
180 Control flow analysis in Scheme - Shivers - 1988
178 Outline of a mathematical theory of computation - Scott - 1970
177 The Synthesizer Generator: A System for Constructing Language-Based Editors - Reps, Teitelbaum - 1989
138 Semantics of Programming Languages - Gunter - 1993
108 Set-based analysis of ML programs - Heintze - 1994
101 S.: Finite differencing of computable expressions - Paige, Koenig - 1982
91 Projections for strictness analysis - Wadler, Hughes - 1987
86 Efficient type inference for higher-order binding-time analysis - Henglein - 1991
86 Partial dead code elimination - Knoop, Rfthing, et al. - 1994
69 An Algorithm for Reduction of Operator Strength - Cocke, Kennedy - 1977
66 Formal language, grammar and set-constraintbased program analysis by abstract interpretation - Cousot, Cousot - 1995
65 Backwards analysis of functional programs - Hughes - 1987
63 The Scheme Programming Language - Dybvig - 2003
60 Safe fusion of functional expressions - Chin - 1992
59 Static type inference in a dynamically typed language - Aiken, Murphy - 1991
59 Escape analysis: Correctness proof, implementation and experimental results - Blanchet - 1998
58 Declaration-free type checking - Mishra, Reddy - 1985
54 Programming languages and their compilers: Preliminary notes. Courant Institute of Mathematical Sciences - Cocke - 1969
54 Goldberg: Escape analysis on lists - Park, B - 1992
51 Program specialization via program slicing - Reps, Turnidge - 1996
49 Set-Based Program Analysis - HEINTZE - 1992
45 Projection Factorisations in Partial Evaluation - Launchbury - 1991
43 Compile-time garbage collection by sharing analysis - Jones, Métayer
42 Static caching for incremental computation - Liu, Stoller, et al. - 1998
38 Calendrical Calculations - Dershowitz, Reingold - 1997
38 Systematic Derivation of Incremental Programs - Liu, Teitelbaum - 1995
34 On the complexity of escape analysis - Deutsch - 1997
30 Partial dead code elimination using slicing transformations - Bodik, Gupta - 1997
30 Separating binding times in language specifications - Mogensen
29 A study of dead data members in C++ applications - Sweeney, Tip - 1998
26 D.: Dynamic programming via static incrementalization - Liu, Stoller - 2003
22 Discovering auxiliary information for incremental computation - Liu, Stoller, et al. - 1996
22 Interconvertibility of a class of set constraints and context-free-language reachability - Melski, Reps - 2000
19 Constraint systems for useless variable elimination - Wand, Siveroni - 1999
14 A grammar-based data-flow analysis to stop deforestation - S��rensen - 1994
12 Iteration Space Slicing and Its Application to Communication Optimization - Pugh, Rosser - 1997
12 Set constraints for destructive array update optimization - Wand, Clinger - 2001
10 Dependence analysis for recursive data - Liu - 1998
10 Constraints to stop deforestation - Seidl, S��rensen - 1998
9 Use-definition chains with applications - Kennedy - 1978
8 Vlaminck. Program bifurcation for a polymorphically typed functional language - Niel, Bevers, et al. - 1991
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University