Yeah, that is a lot of instances (especially all 62 types of tuples). I think you're right that it makes more sense to do this with an extension to the deriving mechanism, especially since even if I wrote them now, it would probably make sense to redo them with a deriving clause later. At the moment, I don't really need any of them but Proxy, which is already done, some I'm happy to wait this one out. Thanks.

-Andrew Martin

On Tue, Mar 29, 2016 at 9:10 AM, Ryan Scott <ryan.gl.scott@gmail.com> wrote:
Well, if we're going to be thorough, we need to also get:

* Tuple types
* All (* -> *)-kinded datatypes in Data.Monoid
* Data.Type.Equality.(:~:) and Data.Type.Coercion.Coercion
* Fixed
* ST, STRef
* Chan
* MVar, IORef, TVar

A lot of these types' existing Eq/Ord/Read/Show instances are
currently derived, however, and you might find it incredibly tedious
to type all them out by hand (not to discourage you from going for it
if you need them now, but we warned). Given that the window for new
8.0 features is almost closed, perhaps it would be better to wait
until I've implemented an extension which derives these classes
automatically?

(I wanted to get such an extension implemented sooner, but time ran
out. I'll try to find some time to write a wiki page proposing a
design so that we can get the ball rolling soon after the 8.0 final
release.)

Ryan S.
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs



--
-Andrew Thaddeus Martin