Scalaユーザの皆様は、普段からコレクションライブラリの高階関数を使われていることと思います。特に、mapやflatMapは必須の高階関数といっても良いでしょう。 さて、話は少し変わりますが、Scala 2.8以降のコレクションライブラリでは、map,flatMapなどに対して、implicitな引数 bf: CanBuildFrom がくっついています。たとえば、List[+A]#mapのシグニチャは def map[B, That] (f: (A) ⇒ B)(implicit bf: CanBuildFrom[List[A], B, That]): That となっています。ここで、通常のケースではimplicit paramater bfの存在を意識しなくても意図通りに動作するようにmapメソッド(正確には、意図通りにmap メソッドが動作するように、bfに対して適切なCanBui