There isn't a killer use case, because tail calls (to yourself or to siblings) can always be easily converted to a loop, and the loop is more idiomatic in most mainstream languages.
...and that costs you code modularity and separate compilation. Why lose them when you don't have to?
...and that costs you code modularity and separate compilation. Why lose them when you don't have to?