Scalaのソースを読んでいます。
Function.scalaのchainメソッドっていうのが面白い。
def chain[a](fs: Seq[a => a]): a => a = { x => (x /: fs) ((x, f) => f(x)) }
/:っていうのはfoldleftのシンタックスシュガーなので、よくあるパターンと対比ささせてみる
scala> (0 /: Seq(1,2,3,4,5))(_ + _) res9: Int = 15
左からパタパタと倒していく。
つまりSeq[a => a]という関数のシーケンスを次々に適用していくわけですね。
故にチェイン