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?

questionAnswers(7)

yourAnswerToTheQuestion