A subtle difference between foldLeft and reduceLeft