<div dir="ltr"><div dir="ltr"><div>> <span style="font-size:12pt">Simple is good.  But what is this dead simple idea?<br></span></div><div><br></div><div>I'm referring to David's first e-mail on this thread: <a href="https://mail.haskell.org/pipermail/ghc-devs/2018-September/016191.html">https://mail.haskell.org/pipermail/ghc-devs/2018-September/016191.html</a></div><div><br></div><div>All that would take is putting Coercion in TysWiredIn, and moving Coercion from Data.Type.Coercion to somewhere in ghc-prim.</div><div><br></div><div>> <span style="font-size:12pt">Maybe this thread belongs with the proposal, unless I’m misunderstanding.</span><br></div><div><br></div><div>I think the intention is to have that proposal (which proposes a language change) be superseded by this idea (which does not change the language).</div><div><br></div><div>Ryan S.<br></div><div><span style="font-size:12pt"></span></div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Sep 5, 2018 at 10:20 AM, Simon Peyton Jones <span dir="ltr"><<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div link="#0563C1" vlink="#954F72" lang="EN-GB">
<div class="m_-4382463416279920665WordSection1">
<p class="MsoNormal"><span style="font-size:12.0pt">Simple is good.  But what is this dead simple idea?<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Perhaps: <a href="https://github.com/ghc-proposals/ghc-proposals/pull/116" target="_blank">
https://github.com/ghc-<wbr>proposals/ghc-proposals/pull/<wbr>116</a><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">But that proposal lists several possible alternatives.  Which one did you mean?<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">And all of them are language changes. Making evidence strict would require no language changes to solve the original problem.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Maybe this thread belongs with the proposal, unless I’m misunderstanding.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Simon<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><u></u> <u></u></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> ghc-devs <<a href="mailto:ghc-devs-bounces@haskell.org" target="_blank">ghc-devs-bounces@haskell.org</a>>
<b>On Behalf Of </b>Ryan Scott<br>
<b>Sent:</b> 05 September 2018 15:15<br>
<b>To:</b> <a href="mailto:ghc-devs@haskell.org" target="_blank">ghc-devs@haskell.org</a><br>
<b>Subject:</b> Re: Unpacking coercions<u></u><u></u></span></p>
</div>
</div><span class="">
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal" style="margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
These aren't mutually exclusive ideas. While I'm sure there's many ways we could solve this problem, David's idea has the distinct advantage of being dead simple. I'd rather not block his vision on some other large refactor that may never materialize. (And
 if it _does_ materialize, we could revert any wiring-in of Coercible quite easily.)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal" style="margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
<u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal" style="margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
Ryan S.<u></u><u></u></p>
</div>
</div>
</span></div>
</div>
</div>

</blockquote></div><br></div>