The Haskell 98 errata page currently contains this item related to a hiding clause on an import declaration which refers to a non-existent entity: [Aug 2001] Page 66, Section 5.3, Import Declarations, numbered item 2. Add "It is not an error to hide an entity that is not, in fact, exported by the imported module, although compilers are encouraged to flag a warning in this case." (This is different from what I proposed by email, which made this case an error, but it allow a bit more flexibility as modules change.) IMO allowing a hiding clause to refer to a non-existent entity is a bit odd. Haskell doesn't have any other features like this: it's always an error to refer to an entity that isn't defined anywhere, even if the reference is otherwise harmless. Does anyone else have any opinions on this? Cheers, Simon
"Simon Marlow" <simonmar@microsoft.com> wrote,
The Haskell 98 errata page currently contains this item related to a hiding clause on an import declaration which refers to a non-existent entity:
[Aug 2001] Page 66, Section 5.3, Import Declarations, numbered item 2. Add "It is not an error to hide an entity that is not, in fact, exported by the imported module, although compilers are encouraged to flag a warning in this case." (This is different from what I proposed by email, which made this case an error, but it allow a bit more flexibility as modules change.)
IMO allowing a hiding clause to refer to a non-existent entity is a bit odd. Haskell doesn't have any other features like this: it's always an error to refer to an entity that isn't defined anywhere, even if the reference is otherwise harmless. Does anyone else have any opinions on this?
I agree with you. Cheers, Manuel
participants (2)
-
Manuel M. T. Chakravarty -
Simon Marlow