O Que É Tail Call Optimization?
Tail call optimization é uma técnica de compilador ou runtime que substitui uma chamada em posição de cauda por um salto que reutiliza o stack frame existente em vez de alocar um novo. Como resultado, recursão expressa por meio de tail calls executa em espaço de pilha constante, muito como um loop. Nem todas as linguagens ou modos garantem isso, então sua disponibilidade varia.
Por que importa
Com tail call optimization, código recursivo que de outra forma estouraria a pilha torna-se seguro e eficiente em memória. Sua ausência é o motivo pelo qual algumas linguagens exigem loops onde outras permitem recursão profunda.
Guias relacionados
What Is a Tail Call?A tail call is a function call that is the last action in a function, allowing the current stack frame to be…
What Is Trampolining?Trampolining is a technique that runs recursive calls as a loop by returning the next step instead of calling…
What Is a Continuation?A continuation represents the rest of a computation at a given point, as a value that can be invoked later to…