Closed heades closed 7 years ago
Fixed. Here are working examples: Example 1:
:t \(X<:*)->\(x:X)->x
forall (X<:*).(X -> X)
Example 2:
:t \(X<:*)->\(x:X)->\(Y<:*)->\(y:X->Y)->\(z:Y->Y)->z (y x)
forall (X<:*).(X -> forall (Y<:*).((X -> Y) -> (Y -> Y) -> Y))
We need to go over the pretty printer and add more parens in places. For example,
The output type should actually be: