Spiega il concetto di ricorsione in coda utilizzando un linguaggio di programmazione.
La ricorsione finale è una tecnica di ottimizzazione utilizzata nelle funzioni ricorsive che consente a una funzione di chiamarsi senza dover memorizzare lo stato precedente del programma. Ciò viene fatto sostituendo la chiamata ricorsiva con un ciclo, eliminando così la necessità di memorizzare lo stato precedente nello stack. Come esempio, il seguente codice in Python dimostra una funzione ricorsiva finale che trova la somma dei primi n numeri:

def ricorsione_finale(n, risultato):
    if n == 0:
        return risultato
    else:
        return ricorsione_finale(n - 1, n + risultato)

somma = ricorsione_finale(5, 0)