まず、私が読んでいるReal World Haskellは、を使用foldl
せず、代わりにを使用するように言っていますfoldl'
。だから私はそれを信頼しています。
しかし、私はfoldr
vs をいつ使うべきか迷っていますfoldl'
。私の目の前では、それらがどのように機能するかについての構造がわかりますが、私は愚かすぎて、「どちらが良いか」を理解できません。どちらも同じ答えを返すので、どちらを使用しても問題にはならないように思えます(そうではありませんか?)。実際、このコンストラクトに関する私の以前の経験は、Ruby inject
とClojureの経験でありreduce
、これらには「左」バージョンと「右」バージョンがないようです。(サイド質問:彼らはどのバージョンを使用していますか?)
私のような賢い挑戦的なソートを助けることができるどんな洞察も大いに感謝されます!