RE: [commit: base] master: Implement "TypeLevelReasoning" proposal at wiki:TypeLevelReasoning (365b9d8)

2013-07-24 Thread Simon Peyton-Jones
Richard I am deeply suspicious of all these hs-boot files. Instances should preferably go EITHER with the data type declaration OR with the class declaration. In the case of Proxy, for example, why can't the Typeable instance for Proxy go in Data.Typeable.Internals? (And perhaps similarly fo

Re: [commit: base] master: Implement "TypeLevelReasoning" proposal at wiki:TypeLevelReasoning (365b9d8)

2013-07-24 Thread Richard Eisenberg
I agree that hs-boot files are a little inelegant, but is there a bigger problem with them? I consider instances to be more tied to a datatype definition than the class definition. It may be possible (I think it is) to avoid the Proxy.hs-boot and Equality.hs-boot files if we scatter their insta

RE: [commit: base] master: Implement "TypeLevelReasoning" proposal at wiki:TypeLevelReasoning (365b9d8)

2013-07-24 Thread Simon Peyton-Jones
defined; no harm in one more. So I'd really prefer the re-jig if that's ok Simon | -Original Message- | From: Richard Eisenberg [mailto:e...@cis.upenn.edu] | Sent: 24 July 2013 22:37 | To: Simon Peyton-Jones | Cc: ghc-devs@haskell.org | Subject: Re: [commit: base] master:

RE: [commit: base] master: Implement "TypeLevelReasoning" proposal at wiki:TypeLevelReasoning (365b9d8)

2013-07-25 Thread Richard Eisenberg
yton-Jones | Cc: ghc-devs@haskell.org | Subject: Re: [commit: base] master: Implement "TypeLevelReasoning" proposal | at wiki:TypeLevelReasoning (365b9d8) | | I agree that hs-boot files are a little inelegant, but is there a bigger problem with | them? I consider instances to be mor