JavaでいうGenericsか。

ソースをみてて意味がわからなかった

def func[A](x: List[A]) = ....

の[A]の意味。
いろいろ調べてみると、JavaでいるGenericsと同じ感じらしい。
Javaは1.4以降はほぼ書いたことがなく、新機能を本でみてたくらい
だったので、この結論にいたるのにかなり時間がかかった。
上のようにリストとかの型を保障するような使い方以外に
いまいち使いどころがわからない。
さらに、GenericsとGeneratorがこんがらがってたw

継承関係で制限を設けることもできる。

class A{}
class B extends A{}
class C{}
def func[D <: A](List[D]) = ....

みたいに<:を付けるとできる。 この場合、AのサブクラスのB以外を指定するとエラーになる その逆>:もいける。