
On 23 February 2006 11:14, Malcolm Wallace wrote:
"Simon Marlow"
wrote: However, I would be equally happy to combine type/newtype/data into a single keyword for exports.
for the record, I am in favour of tagging export specifiers with 'class' or 'type' (using 'type' for all type constructors, in light of yours and John's points).
For the sake of avoiding confusion, perhaps we should choose a keyword (or better, a reserved identifier with no meaning outside of the export/import list) that is none of "type", "data", or "newtype"? How about "datatype", "tycon", or the like? Then it would be clearer that there is no relationship between the way the type is defined, and how its namespace is notated in the export list.
Yes, I suppose you could have another keyword. In fact, a keyword is unnecessary, as long as classes are identified with the 'class' keyword, there's no need to tag type constructors too. This is the most minimal extension, and avoids both the confusion of referring to synonyms and datatypes in the same way, and taking a new keyword. Cheers, Simon

"Simon Marlow"
However, I would be equally happy to combine type/newtype/data into a single keyword for exports.
In fact, a keyword is unnecessary, as long as classes are identified with the 'class' keyword, there's no need to tag type constructors too.
Minimal. I like it. Added to the wiki page. Regards, Malcolm

On Thu, Feb 23, 2006 at 11:44:06AM -0000, Simon Marlow wrote:
Yes, I suppose you could have another keyword.
In fact, a keyword is unnecessary, as long as classes are identified with the 'class' keyword, there's no need to tag type constructors too. This is the most minimal extension, and avoids both the confusion of referring to synonyms and datatypes in the same way, and taking a new keyword.
I assume we will also follow the suggestion on the page that the presence of a subordinate list distinguishes a type from a value constructor. that would allow us to uniquely identify everything needing only 'class' in export lists John -- John Meacham - ⑆repetae.net⑆john⑈
participants (3)
-
John Meacham
-
Malcolm Wallace
-
Simon Marlow