|
|
SPECIAL ISSUE: Special Issue of the Symposium on Principles of Programming Languages 2009
|
Positive Supercompilation for a Higher-Order Call-By-Value Language
|
©Peter A. Jonsson, Luleå University of Technology ©Johan Nordlander, Luleå University of Technology |
Abstract
Previous deforestation and supercompilation algorithms may introduce
accidental termination when applied to call-by-value programs. This hides
looping bugs from the programmer, and changes the behavior of a program
depending on whether it is optimized or not. We present a supercompilation
algorithm for a higher-order call-by-value language and prove that the
algorithm both terminates and preserves termination properties. This algorithm
utilizes strictness information to decide whether to substitute or not and
compares favorably with previous call-by-name transformations.
|
Publication date: August 18, 2010
Full Text: PDF | PostScript DOI: 10.2168/LMCS-6(3:5)2010
Hit Counts: 2640 |
Creative Commons | |