---------------------------------------------------------------------------------------------------
Inferred type is less polymorphic than
expected
Quantified type variable
`b' is unified with another quantified type variable `a'
When trying to generalise the type inferred for
`>>='
Signature
type: forall a1
b1.
AParser a1 -> (a1 -> AParser b1) -> AParser
b1
Type to generalise: forall a1
b1.
AParser a1 -> (a1 -> AParser b1) -> AParser b1
In
the instance declaration for `Monad AParser'
Failed, modules loaded:
none.
---------------------------------------------------------------------------------------------------
But when I create the type synonym
type Stack = [String]
data AParser String = AP {apapply::(Stack -> [(String,Stack)])}
and use Stack instead of [String], GHC does not complain???
Thanks.
Mansour.