Paul A. Steckler: Correct higher-order program transformations; Thesis, Northeastern University, July 1994.
(Soure: ftp://ftp.ccs.neu.edu/pub/people/steck/thesis.ps.Z)
Presents a method for proving the correctness of compiler optimizations for higher-order programming languages. Optimizations exhibited:
- selective and lightweight closure conversion (constructing source-level closures for procedures
- ultra-beta (a generalization of copy propagation to higher-order languages)
- selective thunkification (transforming call-by-name programs into call-by-value equivalents)