Innanzitutto, Real World Haskell , che sto leggendo, dice di non usare mai foldl
e invece di usare foldl'
. Quindi mi fido.
Ma io sono confusa su quando utilizzare foldr
vs. foldl'
. Anche se riesco a vedere la struttura di come funzionano in modo diverso davanti a me, sono troppo stupido per capire quando "che è meglio". Immagino mi sembri che non dovrebbe davvero importare quale sia usato, dato che entrambi producono la stessa risposta (no?). In effetti, la mia precedente esperienza con questo costrutto è quella di Ruby inject
e Clojure reduce
, che non sembrano avere versioni "sinistra" e "destra". (Domanda a margine: quale versione usano?)
Qualsiasi intuizione che possa aiutare un tipo sfidato intelligente come me sarebbe molto apprezzata!