私は Scala の初心者で、型システムについて質問があります。
flatten メソッドはネストされたコレクションで機能するため、リストのリストがある場合、リストにフラット化されます。しかし、すでにフラットになっているコレクションに対して flatten を呼び出すのは意味がありません。そして、確かに Scala 型チェッカーはそれをエラーとしてフラグ付けします。
List(List(1,2,3),List(4,5,6)).flatten // produces List(1,2,3,4,5,6)
List(1,2,3,4).flatten // type error
これはどういうわけか、平坦化する暗黙のパラメーターに依存していることを理解しています。しかし、暗黙的な値がどこから来ているのか、オブジェクトの型をアサートするためにそれがどのように使用されているのかはわかりません。また、暗黙のパラメーターが List.flatten の scaladocs に表示されないのはなぜですか?