# Arbitrary-rank polymorphism with RankNTypes
GHC’s type system supports arbitrary-rank explicit universal quantification in types through the use of the Rank2Types
and RankNTypes
language extensions.
# RankNTypes
StackOverflow forces me to have one example. If this topic is approved, we should move this (opens new window) example here.
# Syntax
- Arbitrary rank quantification is enabled with either the
Rank2Types
orRankNTypes
language extension. - With this extension enabled, the
forall
keyword can be used to add higher-rank quantification.