[Haskell-cafe] RE: [Haskell] Lexically scoped type variables

Simon Peyton-Jones simonpj at microsoft.com
Thu Oct 19 03:59:35 EDT 2006


| 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.

No, that's not right.  In 6.4 it was absolutely nailed down exactly
where a lexical type variable was *bound* and where it was *used*.
Identifying the site where it comes into scope isn't the problem.

However, 6.4 allowed you to bring into scope a lexical type variable
that was a name for an existing type.  Whereas 6.6 brings into scope a
lexical type variable only at places where the type variable it names is
being quantified.  

Yes, it's confusing!

Simon



More information about the Haskell-Cafe mailing list