The main use for this seems to be when a module defining a data type
lacks an instance you want, and for some reason you can't get the
original module changed.
If you continue this line of reasoning:
1. The only reason a module can not be changed is that it is in some
library as opposed to your own code.
2. The only instances that can be derived are for Prelude classes.
3. These classes are already known in library modules, so they could
have been derived there.
4. The fact that they are not unnecessarily reduces the usefulness of
the library, and could therefore be considered a bug.
5. In fact, looking at the standard libraries, they already provide
instances for all relevant Prelude classes.
This leaves me to wonder what stand-alone deriving is actually good for,
only newtypes?
Twan
_______________________________________________
Haskell-prime mailing list
Haskell-prime@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-prime