Todas as funções recursivas podem ser reescritas como recursões de cauda? [duplicado]
Duplicata Possível:
Existem problemas que não podem ser escritos usando a recursão da cauda?
Pelo que entendi, tail recursion é uma otimização que você pode usar quando uma chamada recursiva não precisa de informações das chamadas recursivas que ela enviará.
É possível então implementar todas as funções recursivas usando recursão de cauda? Que tal algo como DFS, onde você precisa que o filho mais interno retorne antes que o pai possa?