Erstens sagt Real World Haskell , das ich lese, dass man es niemals benutzen foldl
und stattdessen benutzen soll foldl'
. Also vertraue ich ihm.
Aber ich bin trüb , wenn die Verwendung foldr
vs. foldl'
. Obwohl ich die Struktur ihrer Funktionsweise vor mir sehen kann, bin ich zu dumm, um zu verstehen, wann "was besser ist". Ich denke, es scheint mir, dass es eigentlich keine Rolle spielen sollte, welche verwendet wird, da beide die gleiche Antwort liefern (nicht wahr?). Tatsächlich stammen meine früheren Erfahrungen mit diesem Konstrukt aus Rubys inject
und Clojures reduce
, die keine "linken" und "rechten" Versionen zu haben scheinen. (Nebenfrage: Welche Version verwenden sie?)
Jede Einsicht, die einer klugen Art wie mir helfen kann, wäre sehr dankbar!