[commit: ghc] wip/impredicativity: Added a new rule to canonicalization of InstanceOf (19c685e)

git at git.haskell.org git at git.haskell.org
Tue Jul 14 08:24:36 UTC 2015


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

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

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

commit 19c685ed0292a133426c019f129c80dd37209128
Author: Alejandro Serrano <trupill at gmail.com>
Date:   Tue Jul 14 10:23:00 2015 +0200

    Added a new rule to canonicalization of InstanceOf
    
    - When we have (Q => ty1) <~ ty2, where none of the sides has a
      forall at the from, we can convert it to ty1 ~ ty2 /\ Q1.
      This is needed, for example, to prove (b ~ b => r) <~ r, that
      appears in base/Data/Type/Equality.hs.


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

19c685ed0292a133426c019f129c80dd37209128
 compiler/typecheck/TcCanonical.hs | 88 +++++++++++++++++++++++----------------
 docs/types/impredicativity.ltx    |  9 ++--
 2 files changed, 56 insertions(+), 41 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 19c685ed0292a133426c019f129c80dd37209128


More information about the ghc-commits mailing list