我明白为什么功能组合很重要.它允许从小而简单的功能构建大而复杂的功能.
val f: A => B = ... val g: B => C = ... val h = f andThen g; // compose f and g
该组合符合身份和关联性法则.
关联性是有用的,因为它允许以任何顺序对f1和f2进行分组,然后分组为f3和T4 ….现在我不知道为什么身份是有用的
def f[T](t:T) = t // identity function val g: A => B = ... // just any function g andThen f[B] == f[A] andThen g
所以,我的问题是在哪里和为什么这个身份有用.