
10 Mar
2011
10 Mar
'11
12:55 p.m.
On 10 March 2011 18:24, Yves Parès
Why has the operator (.) troubles with a type like (forall s. ST s a)?
Why can't it match the type 'b' in (.) definition?
As explained by the email from SPJ that I linked to, instantiating a type variable (like 'b') with a polymorphic type (like 'forall s. ST s a' ) is called impredicative polymorphism. Since GHC-7 this is not supported any more because it was to complicated. Bas