[commit: ghc] master: Refactor TyCon to eliminate TupleTyCon (f6ab0f2)

git at git.haskell.org git at git.haskell.org
Fri May 1 07:30:50 UTC 2015


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/f6ab0f2d595b34f33716513c0bf71b30f8b8e015/ghc

>---------------------------------------------------------------

commit f6ab0f2d595b34f33716513c0bf71b30f8b8e015
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date:   Thu Apr 30 23:33:42 2015 +0100

    Refactor TyCon to eliminate TupleTyCon
    
    This makes TupleTyCon into an ordinary AlgTyCon, distinguished
    by its AlgTyConRhs, rather than a separate constructor of TyCon.
    
    It is preparatory work for making constraint tuples into classes,
    for which the ConstraintTuple tuples will have a TyConParent
    of a ClassTyCon.  Tuples didn't have this possiblity before.
    
    The patch affects other modules because I eliminated the
    unsatisfactory partial functions tupleTyConBoxity and tupleTyConSort.
    And tupleTyConArity which is just tyConArity.


>---------------------------------------------------------------

f6ab0f2d595b34f33716513c0bf71b30f8b8e015
 compiler/coreSyn/PprCore.hs                    |   9 +-
 compiler/deSugar/Check.hs                      |   3 +-
 compiler/iface/BinIface.hs                     |  23 ++-
 compiler/iface/IfaceType.hs                    |   4 +-
 compiler/iface/MkIface.hs                      |  16 +-
 compiler/prelude/TysWiredIn.hs                 |  12 +-
 compiler/typecheck/TcGenDeriv.hs               |   9 +-
 compiler/typecheck/TcTyDecls.hs                |  15 +-
 compiler/types/TyCon.hs                        | 241 +++++++++++--------------
 compiler/types/TypeRep.hs                      |  17 +-
 compiler/vectorise/Vectorise/Type/TyConDecl.hs |   7 +
 11 files changed, 176 insertions(+), 180 deletions(-)

Diff suppressed because of size. To see it, use:

    git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc f6ab0f2d595b34f33716513c0bf71b30f8b8e015


More information about the ghc-commits mailing list