<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Jun 10, 2015 at 12:11 PM, Roman Cheplyaka <span dir="ltr"><<a href="mailto:roma@ro-che.info" target="_blank">roma@ro-che.info</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 10/06/15 21:50, wren romano wrote:<br>
> On Thu, Jun 4, 2015 at 11:43 PM, Edward Z. Yang <<a href="mailto:ezyang@mit.edu">ezyang@mit.edu</a>> wrote:<br>
>> GHC used to always generalize let-bindings, but our experience<br>
>> with GADTs lead us to decide that let should not be generalized<br>
>> with GADTs.  So, it's not like we /wanted/ MonoLocalBinds, but<br>
>> that having them makes the GADT machinery simpler.<br>
>><br>
>> This blog post gives more details on the matter:<br>
>>     <a href="https://ghc.haskell.org/trac/ghc/blog/LetGeneralisationInGhc7" target="_blank">https://ghc.haskell.org/trac/ghc/blog/LetGeneralisationInGhc7</a><br>
><br>
> The fact that -XGADTs (in isolation) implies -XMonoLocalBinds isn't<br>
> the problem. The problem is, the order in which language pragma are<br>
> offered should not matter. Whether I say {-# LANGUAGE GADTs,<br>
> NoMonoLocalBinds #-} or {-# LANGUAGE NoMonoLocalBinds, GADTs #-}<br>
> shouldn't matter. Both should mean the same thing, regardless of how<br>
> annoying it may be to work in that language.<br>
<br>
</span>The current behavior may be surprising if you are not aware of it, but<br>
it's the only sensible one. Otherwise, what should the meaning of<br>
<br>
{-# LANGUAGE MonoLocalBinds, NoMonoLocalBinds #-}<br>
<br>
be?<br>
<span class="HOEnZb"><font color="#888888"><br>
Roman<br>
<br></font></span></blockquote><div><br></div><div>Arguably it should be a compiler warning.</div><div><br></div><div>-Nathan</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="HOEnZb"><font color="#888888">
</font></span><br>_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
<br></blockquote></div><br></div></div>