Qualified identifiers opinion
Christian.Maeder at dfki.de
Mon Aug 20 07:21:22 EDT 2007
Simon Marlow wrote:
> I believe the solution we adopted for GHC 6.8.1 (and I proposed for
> Haskell') strikes the right balance.
> M.where is lexed as an identifier. This doesn't require adding any
> exceptions or corner cases to either the implementation or the
> specification of the grammar. It is much easier to implement than the
> existing Haskell 98 rule (I deleted 30 lines of code from GHC's lexer to
> implement it). It's easy to understand. It removes an opportunity for
> obfuscation. It must be the right thing!
Yes, and fortunately (for all tools that output names unqualified, like
ghci's browse) an identifier like "M.where" is unusable, because ghc
Qualified name in function definition
Otherwise (or nevertheless) I would invest an extra code line in the
lexer to rule out such identifiers.
More information about the Glasgow-haskell-users