[commit: ghc] wip/impredicativity: Initial support for new InstanceOf constraint (d1073f8)

git at git.haskell.org git at git.haskell.org
Wed Jun 17 11:52:42 UTC 2015


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

On branch  : wip/impredicativity
Link       : http://ghc.haskell.org/trac/ghc/changeset/d1073f81abfccb40895e20194a661e673395997f/ghc

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

commit d1073f81abfccb40895e20194a661e673395997f
Author: Alejandro Serrano <trupill at gmail.com>
Date:   Tue Jun 16 13:58:06 2015 +0200

    Initial support for new InstanceOf constraint
    
    As (~) and Coercible, InstanceOf has a kind * -> * -> Constraint
    which cannot be expressed directly in Haskell. Thus, we have to
    include its type wired-in.
    
    - Add definition to GHC.Types
    
    - Add custom kind in compiler/prelude/TysWiredIn.
    
    - Add new canonical InstanceOf constraints.


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

d1073f81abfccb40895e20194a661e673395997f
 compiler/prelude/PrelNames.hs       |  6 ++++++
 compiler/prelude/TysWiredIn.hs      | 32 ++++++++++++++++++++++++++++---
 compiler/prelude/TysWiredIn.hs-boot |  2 +-
 compiler/typecheck/TcRnTypes.hs     | 13 +++++++++++++
 compiler/typecheck/TcType.hs        |  3 ++-
 compiler/typecheck/TcValidity.hs    |  3 +--
 compiler/types/Type.hs              | 38 ++++++++++++++++++++++++++++++++-----
 libraries/ghc-prim/GHC/Types.hs     |  8 ++++++--
 8 files changed, 91 insertions(+), 14 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 d1073f81abfccb40895e20194a661e673395997f


More information about the ghc-commits mailing list