[Haskell-cafe] Decision procedure for foldr/foldl/foldl'?