logo       

[GHC] #837: Infer fully qualified names to overcome namespace clashes: msg#00097

lang.haskell.glasgow.bugs

Subject: [GHC] #837: Infer fully qualified names to overcome namespace clashes

#837: Infer fully qualified names to overcome namespace clashes
-----------------------------------+----------------------------------------
Reporter: p.tanski@xxxxxxxxx | Owner: nobody
Type: feature request | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.4.2
Severity: normal | Keywords:
Os: Unknown | Difficulty: Unknown
Architecture: Unknown |
-----------------------------------+----------------------------------------
If you could interpret Section 5.5.2 of the last published Haskell Report
(1998) as meaning: "[i]t is not an error for there to exist names [such as
A.f or f] that cannot be ... resolved [by the implementation] ..." Then
it would be exceptionally handy for GHC to be able to infer what any human
being can infer from most name usage in a function. For example:

import Data.Map
import Data.List

runThroughMap :: (Ord k) => Map k a -> Map k b
runThroughMap m = map f m

runThroughList :: [a] -> [b]
runThroughList l = map g l

GHC will produce an error that this "map" is an ambiguous reference and
provides a nice error message containing the fully qualified names. If
you accept a permissive interpretation of Section 5.5.2 of the '98 Report,
GHC could infer from context that map in `runThroughMap` is being used on
a Map and therefore should be fully qualifiable and unambiguous; similarly
for map used in `runThroughList.`

Of course, if you disagree with this interpretation for whatever reason--
many reasons are practical--feel free to delete this feature request...

W.B.R.
-Peter T.

--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/837>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@xxxxxxxxxxx
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise