Text this: Lazy Evaluation: From natural semantics to a machine-checked compiler transformation