* large step in expressiveness: types become impredicative, albeit with an intervening data constructor, enabling Church encodings and similar System F tricks. The very useful [wiki:Rank2Types] can be viewed as syntactic sugar (and therefore a safe next step).

19

* used by `ReadP` type.

22

* large increment in expressiveness: types become impredicative, albeit with an intervening data constructor, enabling Church encodings and similar System F tricks.

23

* used by the [http://www.haskell.org/ghc/docs/latest/html/libraries/base/Text-ParserCombinators-ReadP.html ReadP] type.