minor errors in Haskell 2010 report
marlowsd at gmail.com
Thu Aug 23 18:01:22 CEST 2012
On 23/08/2012 16:51, Ramana Kumar wrote:
> On Thu, Aug 23, 2012 at 4:43 PM, Simon Marlow <marlowsd at gmail.com
> <mailto:marlowsd at gmail.com>> wrote:
> The current text seems clear to me. This is the *definition* of
> what is exported by module M, so referring to what is exported by
> module M within its own definition would be very confusing.
> To clarify, this is not the definition of what is exported by module M;
> rather, it is the definition of what is exported by some other module
> that includes "module M" in its export list.
Yes sorry, I got slightly mixed up there. But the current text still
seems clear to me. You said:
> It is not clear that "in scope" here really means "in scope and
exported by module M".
There are two cases:
Either M is the current module, in which case we should not refer
recursively to the export list in the definition of the export list, or
M is not the current module, in which case the only way that an entity
could be in scope in the current module is if it was exported by M and
subsequently imported by the current module, so adding "exported by
module M" is superfluous.
The current definition is succinct and does the right thing, without
having to resort to separating the two cases explicitly. Perhaps it
could do with a word or two of explanation in the text, though.
More information about the Haskell-prime