| 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 _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
