Static Single-Assignment (SSA) form is an intermediate designed to make optimization clean and for imperative-language (Fortran, C) compilers. -calculus is an intermediate language that optimization clean and efficient for functional language (Scheme, ML, Haskell) compilers. The SSA draws pictures of graphs with basic blocks flow edges, and the functional-language community lexically nested functions, but (as Richard Kelsey pointed out) they’re both doing exactly the thing in different notation.
No takes yet. Share an insight, caveat, or question.
Andrew W. Appel (1998) studied this question.
Synapse has enriched 5 related papers. Consider them for comparative context: