I'm trying to use the following idiom to selectively import functions from the List module: import qualified List nub = List.nub but I'm finding that HUGS complains about "unresolved top level overloading" with "outstanding context: "Eq b". If I duplicate the type signature thus: import qualified List nub :: Eq a => [a] -> [a] nub = List.nub All seems to be well. I find it counter-intuitive that I cannot simply define a = b such that any occurrence of a is equivalent to an occurrence of b. I thought that was the point of referential transparency in functional languages. I don't know where to look in the Haskell documents to decide whether the above is a bug or truly according to the language spec. #g ------------------- Graham Klyne <GK@NineByNine.org> PGP: 0FAA 69FF C083 000B A2E9 A131 01B9 1C7A DBCA CB5E