<div dir="auto">Sounds good to me. </div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 29 Sep 2023 at 7:47 PM, Chris Dornan <<a href="mailto:chris@chrisdornan.com">chris@chrisdornan.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div style="line-break:after-white-space">All,<div><br></div><div>This proposal has now been revised to make it non-disruptive. </div><div><br></div><div>That was the only issue of substance that surfaced in our discussion and I recommend that we accept this revised proposal.</div></div><div style="line-break:after-white-space"><div><br></div><div>Chris</div><div><br><div><br><blockquote type="cite"><div>On 8 Sep 2023, at 11:57, Chris Dornan <<a href="mailto:chris@chrisdornan.com" target="_blank">chris@chrisdornan.com</a>> wrote:</div><br><div><div dir="ltr"><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;font-size:12px;line-height:18px;white-space:pre-wrap;background-color:rgb(1,22,39);color:rgb(214,222,235)"><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">Proposal: Amend or patterns (#522) to use p1 ; p2 (#609)</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">Author: Sebastian Graf, David Knothe</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">Rendered proposal: <a href="https://github.com/ghc-proposals/ghc-proposals/blob/eb4b67c29282520b2c5c6a49c3047dbecb15dde1/proposals/0522-or-patterns.rst" target="_blank" style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">https://github.com/ghc-proposals/ghc-proposals/blob/eb4b67c29282520b2c5c6a49c3047dbecb15dde1/proposals/0522-or-patterns.rst</a></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">Discussion: <a href="https://github.com/ghc-proposals/ghc-proposals/pull/609" target="_blank" style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">https://github.com/ghc-proposals/ghc-proposals/pull/609</a></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">Recommendation: Acceptance</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace"><span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,177,255)">## Summary</span></div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">This proposal refines the syntax of an already accpted proposal (#522) for writing or patterns.</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">The syntax of the old proposal,</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">```haskell</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">    <span style="font-style:italic;font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">stringOfT</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">::</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">T</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">-></span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">Maybe</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">String</span></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">    stringOfT (<span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T1</span> s)              <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">=</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">Just</span> s</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">    stringOfT (one <span style="font-style:italic;font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">of</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T2</span>{}, <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T3</span>{}) <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">=</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">Nothing</span></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">```</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">is replaced with</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">```haskell</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">    <span style="font-style:italic;font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">stringOfT</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">::</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">T</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">-></span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">Maybe</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">String</span></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">    stringOfT (<span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T1</span> s)       <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">=</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">Just</span> s</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">    stringOfT (<span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T2</span>{}; <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T3</span>{}) <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">=</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">Nothing</span></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">```</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">or indeed</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">```haskell</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">    <span style="font-style:italic;font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">stringOfT</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">::</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">T</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">-></span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">Maybe</span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">String</span></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">    stringOfT x <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">=</span> <span style="font-style:italic;font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">case</span> x <span style="font-style:italic;font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(199,146,234)">of</span></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">      <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T1</span> s <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">-></span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">Just</span> s</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">      <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T2</span>{}</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">      <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">T3</span>{} <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(127,219,202)">-></span> <span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,170,255)">Nothing</span></div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">```</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">(Beacuse the '(' ... ')' are optional here, we can remove them and naturally exploit layout.)</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">The authors have conducted polls to see what folks preferred, landing on this proposal. The</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">adjustments to the Haskell grammar are really quite minimal requiring one extra production.</div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace"><span style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace;color:rgb(130,177,255)">## Recommendation</span></div><br><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">The proposal is nondiruptive and as a whole addresses an important practical topic. I recommend</div><div style="font-family:Hasklig,"Fira Code",Menlo,Monaco,"Courier New",monospace">that we accept it</div><br></div></div>
</div></blockquote></div><br></div></div>_______________________________________________<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>