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

Simon Peyton-Jones simonpj at microsoft.com
Wed Jul 24 16:14:54 CEST 2013


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 for other instances.)

Simon

|  -----Original Message-----
|  From: ghc-commits [mailto:ghc-commits-bounces at haskell.org] On Behalf Of
|  Richard Eisenberg
|  Sent: 24 July 2013 12:41
|  To: ghc-commits at haskell.org
|  Subject: [commit: base] master: Implement "TypeLevelReasoning" proposal at
|  wiki:TypeLevelReasoning (365b9d8)
|  
|  Repository : http://darcs.haskell.org/ghc.git/
|  
|  On branch  : master
|  
|  http://hackage.haskell.org/trac/ghc/changeset/365b9d86d195dc483610a68836b4
|  063656602244
|  
|  >---------------------------------------------------------------
|  
|  commit 365b9d86d195dc483610a68836b4063656602244
|  Author: Richard Eisenberg <eir at cis.upenn.edu>
|  Date:   Wed Jul 24 12:38:50 2013 +0100
|  
|      Implement "TypeLevelReasoning" proposal at wiki:TypeLevelReasoning
|  
|      This commit includes a propositional equality (:=:) in Data.Type.Equality,
|      a Proxy type in Data.Proxy, and has updates to Typeable.
|  
|      There is an unfortunate number of hs-boot files necessary, but that
|      seems cleaner than moving Typeable instances around willy-nilly.
|  
|   Data/Data.hs                   |    2 +-
|   Data/Proxy.hs                  |  129
|  ++++++++++++++++++++++++++++++++++++++++
|   Data/Proxy.hs-boot             |    5 ++
|   Data/Type/Equality.hs          |   99
|  ++++++++++++++++++++++++++++++
|   Data/Type/Equality.hs-boot     |    6 ++
|   Data/Typeable.hs               |   42 +++++++------
|   Data/Typeable/Internal.hs      |    5 +-
|   Data/Typeable/Internal.hs-boot |    3 +-
|   base.cabal                     |    2 +
|   9 files changed, 269 insertions(+), 24 deletions(-)
|  
|  
|  Diff suppressed because of size. To see it, use:
|  
|      git show 365b9d86d195dc483610a68836b4063656602244
|  
|  _______________________________________________
|  ghc-commits mailing list
|  ghc-commits at haskell.org
|  http://www.haskell.org/mailman/listinfo/ghc-commits






More information about the ghc-devs mailing list