One of the things that proceed naturally from TCO is transforming general recursive functions into mutually recursive functions that call functions only when they return; i.e. transforming them into continuation-passing style (CPS), so that even general recursion does not encounter stack overflow.
Some FP compilers such as Guile compile to a CPS intermediate language, and the concept of CPS is known within people writing compilers and the FP community, but quite unheard of in the general programming community it seems.
Some FP compilers such as Guile compile to a CPS intermediate language, and the concept of CPS is known within people writing compilers and the FP community, but quite unheard of in the general programming community it seems.