foldLeft(List(1,2,3),                                0) (_ + _)
foldLeft(Cons(1, Cons(2, Cons(3, Nil))),             0) (_ + _)
foldLeft(Cons(2, Cons(3, Nil)),                (0 + 1)) (_ + _)
foldLeft(Cons(3, Nil),                   ((0 + 1) + 2)) (_ + _)
foldLeft(Nil,                      (((0 + 1) + 2) + 3)) (_ + _)
(((0 + 1) + 2) + 3))