[Haskell-cafe] Re: Monad instance for partially applied
type constructor?
Stefan Holdermans
stefan at vectorfabrics.com
Thu Sep 30 01:08:30 EDT 2010
David,
Ryan Ingram wrote:
>>> Haskell doesn't have true type functions; what you are really saying
>>> is
>>>
>>> instance Monad (\v -> Vect k (Monomial v))
Daniel Fischer wrote:
> I think there was a theoretical reason why that isn't allowed (making type
> inference undecidable? I don't remember, I don't recall ...).
Indeed: type inference in the presence of type-level lambdas requires higher-order unification, which is undecidable [1].
Cheers,
Stefan
[1] Gérard P. Huet: The Undecidability of Unification in Third Order Logic Information and Control 22(3): 257-267 (1973)
More information about the Haskell-Cafe
mailing list