I disagree. I expect the last result to be from `a + &quot;\n&quot; + b`, for the reasons I outlined earlier.<br><br>The concatenation operator + does not introduce implied separators when joining strings. There is no reason to think that it should for multi-line strings specifically.<br><div class="gmail_quote"><div dir="ltr">On Fri, Apr 14, 2017 at 16:35 BJ Homer via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><p style="margin:15px 0px;font-family:Helvetica,Arial;font-size:13px"></p><blockquote type="cite"><p style="margin:15px 0px;font-family:Helvetica,Arial;font-size:13px">Consider these two examples:</p><pre style="margin-top:15px;margin-bottom:15px;font-family:Menlo,Consolas,&#39;Liberation Mono&#39;,Courier,monospace;font-size:10pt;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgb(248,248,248);border:1px solid rgb(204,204,204);overflow:auto;padding:4px 8px;word-break:normal;word-wrap:normal"><code class="m_-3264081925624959069swift" style="font-family:Menlo,Consolas,&#39;Liberation Mono&#39;,Courier,monospace;font-size:10pt;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;color:inherit;border:0px;margin:0px;padding:0px;word-break:normal;word-wrap:normal">let string_1 = &quot;&quot;&quot;foo&quot;&quot;&quot;


let string_2 = &quot;&quot;&quot;
    foo
    &quot;&quot;&quot;
</code></pre><p style="margin:15px 0px;font-family:Helvetica,Arial;font-size:13px">What’s the intuitive result you’d expect without taking all the long talk from the list into account?</p><p style="margin:15px 0px;font-family:Helvetica,Arial;font-size:13px">Personally, I’d say <code style="font-family:Menlo,Consolas,&#39;Liberation Mono&#39;,Courier,monospace;font-size:10pt;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgb(248,248,248);color:inherit;border:1px solid rgb(234,234,234);margin:0px 2px;padding:0px 5px;word-break:normal;word-wrap:normal">string_1 == string_2</code> is true.</p></blockquote><div><br></div></div><div style="word-wrap:break-word"><div>I think it’s reasonable to expect them to be different, actually. I might call these “single-line” and “multi-line” mode strings. The single-line mode is primarily useful for being able to include unescaped double-quotes in the string. If you’re in multi-line mode, though, it’s reasonable to be thinking about things in terms of “lines”, and having a trailing newline there seems reasonable. For example, I think it’s reasonable to expect this:</div><div><font face="Menlo"><br></font></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><font face="Menlo"><span><div>let a = &quot;&quot;&quot;</div></span></font><font face="Menlo"><span><div>This is line one</div></span></font><font face="Menlo"><span><div>This is line two&quot;</div></span></font><font face="Menlo"><span><div>&quot;&quot;&quot;</div></span></font><font face="Menlo"><span><div><br></div></span></font><font face="Menlo"><span><div>let b = &quot;&quot;&quot;</div></span></font><font face="Menlo"><span><div>This is line three</div></span></font><font face="Menlo"><span><div>This is line four</div></span></font><font face="Menlo"><span><div>&quot;&quot;&quot;</div></span></font><span><br></span><div><font face="Menlo">(a + b) == &quot;&quot;&quot;</font></div><div><font face="Menlo">This is line one</font></div><div><font face="Menlo">This is line two</font></div><div><font face="Menlo">This is line three</font></div><div><font face="Menlo">This is line four</font></div><div><font face="Menlo">&quot;&quot;&quot;</font></div></blockquote><div><br></div><div>That seems like a reasonable model to work with multi-line strings.</div></div><div style="word-wrap:break-word"><div><br></div><div>-BJ</div></div>_______________________________________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
</blockquote></div>