<div dir="ltr"><div>Dear all,</div><div><br></div><div>Since the conversation is still raging (and still fascinating), let me let everybody know that I will be off my email in the next two weeks. <br></div><div><br></div><div>Let me wish everybody a great holiday season. And talk to you all again in 2021.</div><div><br></div><div>Best,</div><div>Arnaud<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Dec 17, 2020 at 5:53 PM Simon Marlow <<a href="mailto:marlowsd@gmail.com">marlowsd@gmail.com</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"><div dir="ltr"><div dir="ltr">On Thu, 17 Dec 2020 at 16:42, Spiwack, Arnaud <<a href="mailto:arnaud.spiwack@tweag.io" target="_blank">arnaud.spiwack@tweag.io</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><p style="margin:0px 0px 1.2em">On Thu, Dec 17, 2020 at 5:24 PM Simon Marlow <a href="http://mailto:marlowsd@gmail.com" target="_blank">marlowsd@gmail.com</a> wrote:</p>
<div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">In the case of partial type signatures  <b>you can't use the feature without generating a warning</b>, which is quite a different matter, I think. It would be even stranger if it was an error!</div></blockquote></div>
<p style="margin:0px 0px 1.2em"> I’m not sure I follow, I can certainly use PartialTypeSignature without generating a warning:</p>
<pre style="font-family:Consolas,Inconsolata,Courier,monospace;font-size:1em;line-height:1.2em;margin:1.2em 0px"><code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;background-color:rgb(248,248,248);white-space:pre-wrap;overflow:auto;border-radius:3px;border:1px solid rgb(204,204,204);padding:0.5em 0.7em;display:block">> :set -XPartialTypeSignatures 
> :set -Wno-partial-type-signatures 
> f :: _ -> _ ; f = (+) 1
</code></pre><p style="margin:0px 0px 1.2em"></p></div></div></blockquote><div>You disabled the warning!</div><div><br></div><div>I'm sorry I'm not making this point very well, let me try to clarify.  I'm saying that it would be strange to enable PartialTypeSignatures by default *and* leave the warning turned on by default, because it would be impossible to use the feature without generating a warning (unless of course you disable the warning explicitly, but it's silly to have to do that just to use a feature that is enabled by default). It would be fine to leave the extension disabled, or better (in my view) to enable the extension and disable the warning.<br></div></div><div class="gmail_quote"><br></div><div class="gmail_quote">Cheers</div><div class="gmail_quote">Simon</div><div class="gmail_quote"><br></div><div class="gmail_quote"><br><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><p style="margin:0px 0px 1.2em">Unless you are saying that the feature <i>is</i> the warning. Which is debatable.</p>
<p style="margin:0px 0px 1.2em">If you think that the warning is the feature, though, then you have the same feature without PartialTypeSignature, but as an error instead</p>
<pre style="font-family:Consolas,Inconsolata,Courier,monospace;font-size:1em;line-height:1.2em;margin:1.2em 0px"><code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;background-color:rgb(248,248,248);white-space:pre-wrap;overflow:auto;border-radius:3px;border:1px solid rgb(204,204,204);padding:0.5em 0.7em;display:block">> f :: _ -> _ ; f = (+) 1

<interactive>:2:6: error:
    * Found type wildcard `_' standing for `Integer'
      To use the inferred type, enable PartialTypeSignatures
    * In the type `_ -> _'
      In the type signature: f :: _ -> _

<interactive>:2:11: error:
    * Found type wildcard `_' standing for `Integer'
      To use the inferred type, enable PartialTypeSignatures
    * In the type `_ -> _'
      In the type signature: f :: _ -> _
</code></pre><div title="MDH:PGRpdiBkaXI9Imx0ciIgZ21haWxfb3JpZ2luYWw9IjEiPk9uIFRodSwgRGVjIDE3LCAyMDIwIGF0
IDU6MjQgUE0gU2ltb24gTWFybG93ICZsdDttYXJsb3dzZEBnbWFpbC5jb20mZ3Q7IHdyb3RlOjxi
cj48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSI+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWls
X3F1b3RlIiBzdHlsZT0ibWFyZ2luOiAwcHggMHB4IDBweCAwLjhleDsgYm9yZGVyLWxlZnQ6IDFw
eCBzb2xpZCByZ2IoMjA0LCAyMDQsIDIwNCk7IHBhZGRpbmctbGVmdDogMWV4OyI+PGRpdiBkaXI9
Imx0ciI+SW4gdGhlIGNhc2Ugb2YgcGFydGlhbCB0eXBlIHNpZ25hdHVyZXMgIDxiPnlvdSBjYW4n
dCB1c2UgdGhlIGZlYXR1cmUgd2l0aG91dCBnZW5lcmF0aW5nIGEgd2FybmluZzwvYj4sIHdoaWNo
IGlzIHF1aXRlIGEgZGlmZmVyZW50IG1hdHRlciwgSSB0aGluay4gSXQgd291bGQgYmUgZXZlbiBz
dHJhbmdlciBpZiBpdCB3YXMgYW4gZXJyb3IhPC9kaXY+PC9ibG9ja3F1b3RlPjxkaXY+PGJyPjwv
ZGl2PjxkaXY+Jm5ic3A7SSdtIG5vdCBzdXJlIEkgZm9sbG93LCBJIGNhbiBjZXJ0YWlubHkgdXNl
IFBhcnRpYWxUeXBlU2lnbmF0dXJlIHdpdGhvdXQgZ2VuZXJhdGluZyBhIHdhcm5pbmc6PC9kaXY+
PGRpdj48YnI+PC9kaXY+PGRpdj5gYGA8L2Rpdj48ZGl2PiZndDsgOnNldCAtWFBhcnRpYWxUeXBl
U2lnbmF0dXJlcyA8YnI+Jmd0OyA6c2V0IC1Xbm8tcGFydGlhbC10eXBlLXNpZ25hdHVyZXMgPGJy
PiZndDsgZiA6OiBfIC0mZ3Q7IF8gOyBmID0gKCspIDE8L2Rpdj48ZGl2PmBgYDwvZGl2PjxkaXY+
PGJyPjwvZGl2PjxkaXY+VW5sZXNzIHlvdSBhcmUgc2F5aW5nIHRoYXQgdGhlIGZlYXR1cmUgX2lz
XyA8c3BhbiB6ZXVtNGMxNz0iMTYwODIyMzA5Njc4NSIgZGF0YS1kZG53YWI9IjE2MDgyMjMwOTY3
ODUiIGNsYXNzPSJuZyIgZGF0YS13cGtndj0idHJ1ZSI+dGhlPC9zcGFuPiB3YXJuaW5nLiBXaGlj
aCBpcyBkZWJhdGFibGUuPGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+SWYgeW91IHRoaW5r
IHRoYXQgdGhlIHdhcm5pbmcgaXMgdGhlIGZlYXR1cmUsIHRob3VnaCwgdGhlbiB5b3UgaGF2ZSB0
aGUgc2FtZSBmZWF0dXJlIHdpdGhvdXQgUGFydGlhbFR5cGVTaWduYXR1cmUsIGJ1dCBhcyBhbiBl
cnJvciBpbnN0ZWFkPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5gYGA8L2Rpdj48ZGl2PiZndDsg
ZiA6OiBfIC0mZ3Q7IF8gOyBmID0gKCspIDE8YnI+PGJyPiZsdDtpbnRlcmFjdGl2ZSZndDs6Mjo2
OiBlcnJvcjo8YnI+Jm5ic3A7ICZuYnNwOyAqIEZvdW5kIHR5cGUgd2lsZGNhcmQgYF8nIHN0YW5k
aW5nIGZvciBgSW50ZWdlcic8YnI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgVG8gdXNlIHRoZSBpbmZl
cnJlZCB0eXBlLCBlbmFibGUgUGFydGlhbFR5cGVTaWduYXR1cmVzPGJyPiZuYnNwOyAmbmJzcDsg
KiBJbiB0aGUgdHlwZSBgXyAtJmd0OyBfJzxicj4mbmJzcDsgJm5ic3A7ICZuYnNwOyBJbiB0aGUg
dHlwZSBzaWduYXR1cmU6IGYgOjogXyAtJmd0OyBfPGJyPjxicj4mbHQ7aW50ZXJhY3RpdmUmZ3Q7
OjI6MTE6IGVycm9yOjxicj4mbmJzcDsgJm5ic3A7ICogRm91bmQgdHlwZSB3aWxkY2FyZCBgXycg
c3RhbmRpbmcgZm9yIGBJbnRlZ2VyJzxicj4mbmJzcDsgJm5ic3A7ICZuYnNwOyBUbyB1c2UgdGhl
IGluZmVycmVkIHR5cGUsIGVuYWJsZSBQYXJ0aWFsVHlwZVNpZ25hdHVyZXM8YnI+Jm5ic3A7ICZu
YnNwOyAqIEluIHRoZSB0eXBlIGBfIC0mZ3Q7IF8nPGJyPiZuYnNwOyAmbmJzcDsgJm5ic3A7IElu
IHRoZSB0eXBlIHNpZ25hdHVyZTogZiA6OiBfIC0mZ3Q7IF88L2Rpdj48ZGl2PmBgYDxicj48L2Rp
dj48L2Rpdj4=" style="height:0px;width:0px;max-height:0px;max-width:0px;overflow:hidden;font-size:0em;padding:0px;margin:0px"></div></div></div>
</blockquote></div></div>
</blockquote></div>