4 ms·
Many common compiler optimizations are subsumed by ordinary reduction rules for lambda calculus. See: [Shrinking reductions in SML. NET](http://research.microso
by iskander 17y ago
Many common compiler optimizations are subsumed by ordinary reduction rules for lambda calculus. See: [Shrinking reductions in SML. NET](http://research.microsoft.com/en-us/um/people/akenn/sml/ShrinkingReductionsInSMLNet.pdf http://research.microsoft.com/en-us/um/people/akenn/sml/Shri...).
That said, you can always transform an imperative program into lambda calculus (sequential imperative IL -> SSA -> Administrative Normal Form) and vice versa (arbitrary lambda calculus -> closure conversion -> Administrative Normal Form -> sequential imperative IL).