classes,恩,你在Haskell熟悉的东西,想在scala里面用基本都要去Scalaz里面找。polymorphism。polymorphism。superclass。polymorphism。generalize一点,提供一种抽象,Monoid,(你懂得就是那个Monoid),它应该满足包含map和zero,两个函数,以及一些性质,这个可以通过很多haskell的书看到。FoldLeft下面把目光转向foldleft操作。bound里面获取实际的foldLeft,以及Monoid,然后,执行。这里面诸如Monoid和FoldLeft在Haskell称为Typeclass。为什么需要ScalaZ。