AZ
Size: a a a
AZ
SP
SP
SP
DF
SP
DF
DF
SP
DF
DF
SP
DF
DF
AZ
Prelude> foo x = not (x x)
<interactive>:3:16: error:
* Occurs check: cannot construct the infinite type: t ~ t -> Bool
* In the first argument of `x', namely `x'
In the first argument of `not', namely `(x x)'
In the expression: not (x x)
* Relevant bindings include
x :: t -> Bool (bound at <interactive>:3:5)
foo :: (t -> Bool) -> Bool (bound at <interactive>:3:1)
AZ
DF
DF
DF
AZ