Dead Code Elimination Through Type Inference
No Access Until
Permanent Link(s)
Collections
Other Titles
Author(s)
Abstract
We introduce a method to detect and eliminate dead code in typed functional programming languages. Our approach relies on a type system with simple subtypes for specifying dead code and a type inference algorithm for it. Through a careful seperation of the type system and the problem-specific assumptions we avoid \emph{ad hoc} rules in the type system. This, combined with the fact that our approach makes the flow information in a program explicit and is based on well-understood concepts makes our approach a good candidate for a general framework for program analysis. Our technique can be used in optimizing compilers, optimization of programs extracted from theorem provers, optimization of modular systems, and other areas of software engineering.