<html><head><style id="css_styles" type="text/css"><!--blockquote.cite { margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc }
blockquote.cite2 {margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc; margin-top: 3px; padding-top: 0px; }
a img { border: 0px; }
table { border-collapse: collapse; }
li[style='text-align: center;'], li[style='text-align: center; '], li[style='text-align: right;'], li[style='text-align: right; '] {  list-style-position: inside;}
body { font-family: 'Segoe UI'; font-size: 12pt; }
.quote { margin-left: 1em; margin-right: 1em; border-left: 5px #ebebeb solid; padding-left: 0.3em; }
a.em-mention[href] { text-decoration: none; color: inherit; border-radius: 3px; padding-left: 2px; padding-right: 2px; background-color: #e2e2e2; }
--></style></head><body><div>Hi Arnaud,</div><div><br /></div><div>Apologies. Indeed, your summary is apt; the proposal is in response to a bug report in GHC: <a href="https://gitlab.haskell.org/ghc/ghc/-/issues/25375" style="font-size: 12pt;">https://gitlab.haskell.org/ghc/ghc/-/issues/25375</a></div><div>This bug motivates splitting multiline string literals not only at `\n` characters, but at general lexical newline terminators as <a href="https://www.haskell.org/onlinereport/haskell2010/haskellch2.html#x7-160002.2">defined in Haskell2010</a> (which would also include `\r\n`, `\r` and `\f`).</div><div>The phrasing in the proposal pre amendment can be seen as ambiguous: What exactly is considered a "newline"? Is it just `\n` or is it the `newline` lexeme specified in Haskell2010 and that is used anywhere else in the report?</div><div>The amendment merely clarifies that we mean the latter.</div><div><br /></div><div>This amendment also resolves the question of whether there is a bug in<span> the yet unreleased implementation of -XMultilineStrings in GHC 9.12 or in the proposal text. After this amendment, the bug is in GHC, where it is easily fixed (</span><a href="https://gitlab.haskell.org/ghc/ghc/-/merge_requests/13432" style="font-size: 12pt;">https://gitlab.haskell.org/ghc/ghc/-/merge_requests/13432</a>)<span>.</span></div><div><span><br /></span></div><div><span>Hence I recommend acceptance.</span></div><div><span><br /></span></div><div><span>Cheers,</span></div><div><span>Sebastian</span></div>
<div><br /></div>
<div x-em-replyforwardheader=""><br /></div>
<div>
<div>------ Originalnachricht ------</div>
<div>Von "Arnaud Spiwack" <<a href="mailto:arnaud.spiwack@tweag.io">arnaud.spiwack@tweag.io</a>></div>
<div>An "Sebastian Graf" <<a href="mailto:sgraf1337@gmail.com">sgraf1337@gmail.com</a>></div>
<div>Cc "Adam Gundry" <<a href="mailto:adam@well-typed.com">adam@well-typed.com</a>>; <a href="mailto:ghc-steering-committee@haskell.org">ghc-steering-committee@haskell.org</a></div>
<div>Datum 11.11.2024 10:36:29</div>
<div>Betreff Re: [ghc-steering-committee] Please review #680: Clarify CRLF behavior in multiline strings (amendment to #569)</div></div><div x-em-quote=""><br /></div>
<div id="x47dca0e9903549f"><blockquote cite="CAGwnsn=9u_m=0ew5KxD_uYXoRU4_cBvh3tG+Q0yDy34wv1v_Cw@mail.gmail.com" type="cite" class="cite2">
<div dir="ltr"><div>Sebastian,</div><div><br /></div><div>As the shepherd you're expected to motivate your decision (typically with a summary of the proposal) to guide us toward a collective decision.</div><div><br /></div><div>For the record, in this case, the change is that all characters considered as `newline` by the report (\r, \n, and a couple others) from the file's text are replaced by a single `\n` in a multiline string. This isn't what the current implementation does, if I understand correctly. But GHC 9.12 isn't released, and I think that Brandon considers the current implementation to be a bug, because his motivation for the design is to match what `unline . line` does.</div><div><br /></div><div>I have absolutely no opinion on whether keeping \r\n or converting to \n is preferable. So I'm happy to defer to Sebastian.<br /></div></div><br /><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 11 Nov 2024 at 17:31, Sebastian Graf <<a href="mailto:sgraf1337@gmail.com">sgraf1337@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">Dear Committee,<br />
<br />
I vote accept on this very small clarifying amendment.<br />
<br />
Cheers,<br />
Sebastian<br />
<br />
<br />
------ Originalnachricht ------<br />
Von "Adam Gundry" <<a href="mailto:adam@well-typed.com">adam@well-typed.com</a>><br />
An <a href="mailto:ghc-steering-committee@haskell.org">ghc-steering-committee@haskell.org</a><br />
Datum 11.11.2024 09:11:43<br />
Betreff [ghc-steering-committee] Please review #680: Clarify CRLF <br />
behavior in multiline strings (amendment to #569)<br />
<br />
>Dear Committee,<br />
><br />
>Brandon Chinn proposes to amend proposal #569, which introduced MultilineStrings, to clarify its treatment of \r\n vs \n:<br />
><br />
><a href="https://github.com/ghc-proposals/ghc-proposals/pull/680" rel="noreferrer">https://github.com/ghc-proposals/ghc-proposals/pull/680</a><br />
><br />
>Sebastian has volunteered to act as 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">https://github.com/ghc-proposals/ghc-proposals#committee-process</a><br />
><br />
>Cheers,<br />
><br />
>Adam<br />
><br />
>-- Adam Gundry, Haskell Consultant<br />
>Well-Typed LLP, <a href="https://www.well-typed.com/" rel="noreferrer">https://www.well-typed.com/</a><br />
><br />
>Registered in England & Wales, OC335890<br />
>27 Old Gloucester Street, London WC1N 3AX, England<br />
>_______________________________________________<br />
>ghc-steering-committee mailing list<br />
><a href="mailto:ghc-steering-committee@haskell.org">ghc-steering-committee@haskell.org</a><br />
><a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" rel="noreferrer">https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><br />
_______________________________________________<br />
ghc-steering-committee mailing list<br />
<a href="mailto:ghc-steering-committee@haskell.org">ghc-steering-committee@haskell.org</a><br />
<a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" rel="noreferrer">https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><br />
</blockquote></div><div><br clear="all" /></div><br /><span class="gmail_signature_prefix">-- </span><br /><div dir="ltr" class="gmail_signature"><div dir="ltr">Arnaud Spiwack<br />Director, Research at <a href="https://moduscreate.com" rel="noopener noreferrer">https://moduscreate.com</a> and <a href="https://tweag.io" rel="noopener noreferrer">https://tweag.io</a>.</div></div>
</blockquote></div>
</body></html>