<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Mar 17, 2014 at 2:45 PM, 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 class="">| The one interesting case is T4306 which fails because the generated name<br></div><div class="">
| $wupd is regarded as an infix name, and thus with my new code is<br>
| rendered as<br>
|<br>
|    ($wupd) :: GHC.Prim.Double# -> GHC.Prim.Double#<br>
|<br>
| instead of the old<br>
|<br>
|    $wupd :: GHC.Prim.Double# -> GHC.Prim.Double#<br>
<br>
</div>I think it'd also be ok just to accept this output too. These "$wxx" names are generated by GHC and won't show up in user output.  It doesn't much matter displaying them in parens.<br></blockquote>

<div><br></div><div>Do they show up in -ddump-simpl? It would be nice to keep that output as readable as possible, as there are quite a few of us that read it on a regular basis.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

But changing isLexVarSym is probably equally fine too.  I think (worth a check) that it's only called for display purposes, and not in any performance-critical parts.<br>
<br>
Whichever you choose, add a Note with isLexVarSym to explain the issue and the choice.</blockquote><div><br></div><div>Does that mean that any operator that starts with $ will now not be considered infix for printing purposes?</div>

<div><br></div><div>-- Johan</div><div> </div></div></div></div>