[Haskell-cafe] Re: [Haskell] Lexically scoped type variables
Bulat Ziganshin
bulat.ziganshin at gmail.com
Wed Oct 18 10:18:49 EDT 2006
Hello Simon,
Wednesday, October 18, 2006, 12:09:40 PM, you wrote:
> Other alternatives would be: do something about partial type
> signatures; or make GADT type inference more sophisticated (and
> thereby perhaps less predicatable).
just one more problem is that this issue is too complicated. i'm not
sure that i correctly understands details, but for me the situation
seems like this: in 6.4 it was no distinction between declarations and
usages of type variables - first use declared it, while in 6.6 we have
exactly defined places to declare type variable. the problem is that
sometimes we want to declare variable for one type but the place where
it may be declared - function signature - requires to write full type
so, if my understanding is correct, may be it's possible to use
special syntax for explicit _declaration_ of type variable at any
place where it can be used? i mean the following:
f (x :: forall a. a) = undefined::a
here, we use 'forall' to explicitly declare new type variable. so it
is equivalent to the following:
f :: forall a. a -> ...
f x = undefined::a
where '...' used to make partial type signature
--
Best regards,
Bulat mailto:Bulat.Ziganshin at gmail.com
More information about the Haskell-Cafe
mailing list