Sto cercando di risolvere questo esercizio . Si tratta di reimplementare la funzione map
in haskell per scopi di apprendimento. Ho trovato una soluzione che non sfoglia tutti gli elementi della lista (semplice elenco collegato, quindi l'accesso all'ultimo elemento sfoglia tutti gli elenchi) ad ogni iterazione, ma non ne ho trovato uno che sia ricorsivo in coda.
accumulateRec :: (a -> b) -> [a] -> [b]
accumulateRec func [] = []
accumulateRec func (h:t) = (func h) : accumulateRec func t
Esiste un modo per implementare la mappa in modo ricorsivo in coda e senza sfogliare l'elenco a ogni iterazione?
PS: exercism.io è un modo fantastico per imparare una nuova lingua.