Sciweavers

PPDP
2015
Springer

Improvements in a functional core language with call-by-need operational semantics

8 years 8 months ago
Improvements in a functional core language with call-by-need operational semantics
An improvement is a correct program transformation that optimizes the program, where the criterion is that the number of computation steps until a value is obtained is decreased. This paper investigates improvements in both – an untyped and a polymorphically typed – call-by-need lambda-calculus with letrec, case, constructors and seq. Besides showing that several local optimizations are improvements, the main result of the paper is a proof that common subexpression elimination is correct and an improvement, which proves a conjecture and thus closes a gap in Moran and Sands’ improvement theory. We also prove that several different length measures used for improvement in Moran and Sands’ call-by-need calculus and our calculus are equivalent.
Manfred Schmidt-Schauß, David Sabel
Added 16 Apr 2016
Updated 16 Apr 2016
Type Journal
Year 2015
Where PPDP
Authors Manfred Schmidt-Schauß, David Sabel
Comments (0)