Use explicit ForallTypes in FlatCurry representation
In the FlatCurry representation, the two functions
id :: a -> a
and
id :: forall a. a -> a
should have the same normalized representation that uses the ForallType
constructor in both cases.
In general, type variable quantification should be explicit in the FlatCurry representation and type should be in weak prenex form.
Edited by Finn Teegen