
On Mon, Jan 30, 2006 at 04:45:56PM -0000, Simon Marlow wrote:
Given the new evidence that it's actually rather hard to demonstrate any performance loss in the absence of the M-R with GHC, I'm attracted to the option of removing it in favour of a warning.
I caution against the hope that warnings will contribute to the solution, whichever side you're on. This is a general argument: Either the warning is on by default or off. If off, it does no harm, but doesn't help much either. If on, it either triggers only on code that is almost certainly wrong (or easily disambiguated), or it sometimes triggers on perfectly good code. In the former case, it would be better to make it illegal (or require the disambiguation). In the latter, nobody likes disabling warnings, so they'll grumble and change the code instead. In the present case, people aren't (only) opposing the M-R out of principle, but because they actually use overloaded variable definitions and (at least sometimes) want to leave off the signature. So I don't see how one could claim, as on the wiki, the warning "wouldn't happen much". I suspect it would happen, and annoy people, and defeat the reason that people want to remove the M-R. Andrew