<div dir="ltr"><div>Committee,</div><div><br></div><div>Proposal #367 suggests using unboxed sums for the results of 7 (seven) primops that use sum types but currently have to encode those explicitly using `Int#`.</div><div><br></div><div><a href="https://github.com/treeowl/ghc-proposals/blob/unboxed-sum-primops/proposals/0000-unboxed-sum-primops.md">https://github.com/treeowl/ghc-proposals/blob/unboxed-sum-primops/proposals/0000-unboxed-sum-primops.md</a></div><div><br></div><div>The proposal is arguably the right thing, however I'm suggesting we reject it for the following reasons:<br></div><div><ol><li>The implementations of the primops would bake in the translation of unboxed sums. Right now our unboxed sum translation is defined in one place - CorePrep - but this proposal would leak it into the implementations of a few primops.</li><li>Migration would entail adding a backwards-compatibility layer, with the associated complexity and risk of performance regressions.</li><li>While the current situation is perhaps inelegant, it's not broken and it's easy to understand.</li></ol><div>Thoughts?</div><div><br></div><div>Simon<br></div><div><br></div></div><div><br></div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, 4 Oct 2020 at 22:14, Joachim Breitner <<a href="mailto:mail@joachim-breitner.de">mail@joachim-breitner.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Dear Committee,<br>
<br>
this is your secretary speaking:<br>
<br>
Clarify primops using unboxed sum<br>
has been proposed by David Feuer<br>
<a href="https://github.com/ghc-proposals/ghc-proposals/pull/367" rel="noreferrer" target="_blank">https://github.com/ghc-proposals/ghc-proposals/pull/367</a><br>
<a href="https://github.com/treeowl/ghc-proposals/blob/unboxed-sum-primops/proposals/0000-unboxed-sum-primops.md" rel="noreferrer" target="_blank">https://github.com/treeowl/ghc-proposals/blob/unboxed-sum-primops/proposals/0000-unboxed-sum-primops.md</a><br>
<br>
I’ll propose Simon Marlow as the shepherd.<br>
<br>
Please guide us to a conclusion as outlined in <br>
<a href="https://github.com/ghc-proposals/ghc-proposals#committee-process" rel="noreferrer" target="_blank">https://github.com/ghc-proposals/ghc-proposals#committee-process</a><br>
<br>
Thanks,<br>
Joachim<br>
-- <br>
Joachim Breitner<br>
  <a href="mailto:mail@joachim-breitner.de" target="_blank">mail@joachim-breitner.de</a><br>
  <a href="http://www.joachim-breitner.de/" rel="noreferrer" target="_blank">http://www.joachim-breitner.de/</a><br>
<br>
<br>
_______________________________________________<br>
ghc-steering-committee mailing list<br>
<a href="mailto:ghc-steering-committee@haskell.org" target="_blank">ghc-steering-committee@haskell.org</a><br>
<a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" rel="noreferrer" target="_blank">https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><br>
</blockquote></div></div>