chain

object Function {
  def chain[X](fs: Collection[(X) => X]): (X) => X
}

chain cria uma função anônima que aceita um valor e retorna o resultado da aplicação seqüencial de todas as funções contidas na coleção fs.