RankNTypes のエイリアスとして定義されている。
RankNTypes
そのため、Rank3 の関数も定義できる
{-# LANGUAGE Rank2Types #-} f3 :: ((forall a. a->a) -> Int) -> Bool -> Bool f3 = undefined
9.21. Arbitrary-rank polymorphism
Last updated 5 years ago