<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en">
<head>
<meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
<title>
GitLab
</title>



<style>img {
max-width: 100%; height: auto;
}
</style>
</head>
<body>
<div class="content">

<h3>
Richard Eisenberg pushed to branch wip/cfuneqcan-refactor
at <a href="https://gitlab.haskell.org/ghc/ghc">Glasgow Haskell Compiler / GHC</a>
</h3>
<h4>
Commits:
</h4>
<ul>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/e50008c44c0087642ef8d573b2bddca8d3c807da">e50008c4</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:26:51-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Move core flattening algorithm to Core.Unify

This sets the stage for a later change, where this
algorithm will be needed from GHC.Core.InstEnv.

This commit also splits GHC.Core.Map into a new file
GHC.Core.Map.Type, in order to avoid module import cycles
with GHC.Core.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/19be54a61afe16492d23c894c3a4478c6bd5cbdf">19be54a6</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:34-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Start of work in simplifying flattening
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b10ee81e81930ebbe7cc1883898f89cd2b3d7e85">b10ee81e</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:34-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Much work toward simplifying CFunEqCan
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2b9de155e2ec5fafe15c9b8f2f72653a30d5efdd">2b9de155</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:34-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Canonicalized function equalities.

Now, onto interactions.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/27360b448f0eb04faf8dc9f5792002bc12445978">27360b44</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:34-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">CEqCan, and canonicalization for it
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/cbf44c909f3f556121908307b2a4c65068d1d9f0">cbf44c90</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:34-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Main changes done. Now to delete code.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/149dd4069b83ecc0557de447ed25380b2ffe67d8">149dd406</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:35-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Kill off CFunEqCan and CTyEqCan
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f9a7de7a95dd181e93d537c24b121a0c010f9aab">f9a7de7a</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:35-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">It compiles.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a11a94e6ee7b420e3e948458118e9e3f40c55f16">a11a94e6</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:35-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Some bugfixing
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/c2b5da0fe6aa29e3f549bbe1a7266a442ff11f23">c2b5da0f</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:35-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Lots of bug fixing
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/86a1c32ae9dbd20bdd9b34c8f33d0470c713a4f6">86a1c32a</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:36-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Expand synonyms that mention families, obvs
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/31e5ded7055e56e009d2cfb921dd2b82e9d1feb4">31e5ded7</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:36-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Super skolems are really super.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b61c0aeae7e10406cb0ebfeaa9a181b5d885ed1d">b61c0aea</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T18:27:36-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Another bug bites the dust.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/ea4da989370c4ac093c5bd9fc06fdabcc8941cc8">ea4da989</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-10-14T23:15:10-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Put variable on left only when it will unify
</pre>
</li>
</ul>
<h4>20 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#783e5dae6e86931f06700fc088fb7d48c8a07386">
compiler/GHC/Core/Coercion.hs
</a>
</li>
<li class="file-stats">
<a href="#b0ab2032bd0c006bb9cda1e5433173de35930f53">
compiler/GHC/Core/Coercion.hs-boot
</a>
</li>
<li class="file-stats">
<a href="#975dc08a8e7942b32d621f617d5a9c1b668601dd">
compiler/GHC/Core/Coercion/Opt.hs
</a>
</li>
<li class="file-stats">
<a href="#91648438362e5a35363d2bb7abb04016dedd7d7e">
compiler/GHC/Core/FamInstEnv.hs
</a>
</li>
<li class="file-stats">
<a href="#5596bb0f228bd2a308c4391df97375ae879430a8">
compiler/GHC/Core/InstEnv.hs
</a>
</li>
<li class="file-stats">
<a href="#e8ff513ccf778ec681682afdca3a5b899745fd60">
compiler/GHC/Core/Map.hs
</a>
</li>
<li class="file-stats">
<a href="#691eec62dc293d0881c314b38b7363dc88b44c59">
<span class="new-file">
+
compiler/GHC/Core/Map/Type.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#4aad0050db1a8a20db8bbca149111de99cb299c9">
compiler/GHC/Core/TyCon.hs
</a>
</li>
<li class="file-stats">
<a href="#84c9d3ba34173297e7d7747e02caa2e004b164fc">
compiler/GHC/Core/Type.hs
</a>
</li>
<li class="file-stats">
<a href="#89a2e0e1a3095c7a42b10f2819049908908080e8">
compiler/GHC/Core/Unify.hs
</a>
</li>
<li class="file-stats">
<a href="#c8a27621f82549165d8946ae8e9f467660958059">
compiler/GHC/HsToCore/Monad.hs
</a>
</li>
<li class="file-stats">
<a href="#b2fd0f5f3e0bc9dcc507931c0b7388bf10e925c2">
compiler/GHC/HsToCore/Types.hs
</a>
</li>
<li class="file-stats">
<a href="#1cf39038e57acc2a80cb5fb3fef9733e8e37b8fb">
compiler/GHC/Iface/Ext/Utils.hs
</a>
</li>
<li class="file-stats">
<a href="#90a56cf7f130d66194a6a61cb5f372eb339ab111">
compiler/GHC/Stg/CSE.hs
</a>
</li>
<li class="file-stats">
<a href="#e4b9d5e9d2de37561bfd06a2c97a5c924a1bab76">
compiler/GHC/Tc/Errors.hs
</a>
</li>
<li class="file-stats">
<a href="#07389a8f0516c26409d86f6bb651ed00759b5d4c">
compiler/GHC/Tc/Instance/Family.hs
</a>
</li>
<li class="file-stats">
<a href="#ad440013ca2a3a7accc3edc7f7807446b7b079c2">
compiler/GHC/Tc/Instance/Typeable.hs
</a>
</li>
<li class="file-stats">
<a href="#54436e21ea530a66a8a71bcc01c836f4740b8f02">
compiler/GHC/Tc/Solver.hs
</a>
</li>
<li class="file-stats">
<a href="#f018e77421f495c6f75733fee4a511cfe57bebe8">
compiler/GHC/Tc/Solver/Canonical.hs
</a>
</li>
<li class="file-stats">
<a href="#81707f1fe21087531cefd70879aa09c2be5c1d22">
compiler/GHC/Tc/Solver/Flatten.hs
</a>
</li>
</ul>
<h5>The diff was not included because it is too large.</h5>

</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #777;">

<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/compare/cbdfe1b9957e3c1f83feaf10e344e21864c202f2...ea4da989370c4ac093c5bd9fc06fdabcc8941cc8">View it on GitLab</a>.
<br>
You're receiving this email because of your account on gitlab.haskell.org.
If you'd like to receive fewer emails, you can
adjust your notification settings.



</p>
</div>
</body>
</html>