Results 1 
2 of
2
TypeBased Useless Variable Elimination
, 1999
"... We show a typebased method for useless variable elimination, i.e., transformation that eliminates variables whose values contribute nothing to the final outcome of a computation, and prove its correctness. The algorithm is a surprisingly simple extension of the usual type reconstruction algorithm. ..."
Abstract

Cited by 20 (4 self)
 Add to MetaCart
We show a typebased method for useless variable elimination, i.e., transformation that eliminates variables whose values contribute nothing to the final outcome of a computation, and prove its correctness. The algorithm is a surprisingly simple extension of the usual type reconstruction algorithm. Our method seems more attractive than Wand and Siveroni's 0CFAbased method in many respects. First, it is efficient: it runs in time almost linear in the size of an input expression for a simplytyped calculus, while the 0CFAbased method may require a cubic time. Second, our transformation can be shown to be optimal among those that preserve welltypedness, both for the simplytyped language and for an MLstyle polymorphicallytyped language. On the other hand, the 0CFAbased method is not optimal for the polymophicallytyped language. ANY OTHER IDENTIFYING INFORMATION OF THIS REPORT Summary has been submitted for publication. Uptodate version of this report will be available through ...
TypeBased UselessVariable Elimination
, 2000
"... Uselessvariable elimination is a transformation that eliminates variables whose values contribute nothing to the final outcome of a computation. We present a typebased method for uselessvariable elimination and prove its correctness. The algorithm is a surprisingly simple extension of the usual t ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
Uselessvariable elimination is a transformation that eliminates variables whose values contribute nothing to the final outcome of a computation. We present a typebased method for uselessvariable elimination and prove its correctness. The algorithm is a surprisingly simple extension of the usual typereconstruction algorithm. Our method has several attractive features. First, it is simple, so that the proof of the correctness is clear and the method can be easily extended to deal with a polymorphic language. Second, it is efficient: for a simplytyped calculus, it runs in time almost linear in the size of an input expression. Moreover, our transformation is optimal in a certain sense among those that preserve welltypedness, both for the simplytyped language and for an MLstyle polymorphicallytyped language.