<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">I agree that nested braces in parentheses are much more ugly then nested quotes in parentheses.<div class="">About ExressibleByStringLiteral: This is a completely orthogonal case. The issue is passing these string literals to functions.</div><div class="">The passed literal doesn't have to be string, it can be any other ExpressibleByStringLiteral.</div><div class="">This is not something that I'd like to actively push for because this really is not that big of a deal, but some case that happened to me a couple of times and given that the exact same behavior is already implemented with closures, I though extending it to encompass string literal would be a cheap way of making another popular use case easier on the eye.</div><div class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Jun 15, 2017, at 7:49 PM, Xiaodi Wu &lt;<a href="mailto:xiaodi.wu@gmail.com" class="">xiaodi.wu@gmail.com</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class="">Agree with David on all points. Neat idea, but not convinced it’s a win in terms of tidying up code vs. increased burden of new grammar rule.<br class=""><br class="">Agree also that it’s a subjective opinion. For me, ({[]}) nesting is clunky both to read and write, but (“”) just doesn’t have the same issues even with multiline syntax–the symbols are just so unlike each other.<br class=""><br class="">Your DSL examples, if truly you’re using them often, suggest that these particular types should be extended to conform to ExpressibleByStringLiteral.<br class=""><div class="gmail_quote"><div dir="ltr" class="">On Thu, Jun 15, 2017 at 11:16 David Hart via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>&gt; wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I totally see what you are driving at. But I just see less value in it that with trailing closure. But it’s very personal.<br class="">
<br class="">
&gt; On 15 Jun 2017, at 13:18, Gor Gyolchanyan &lt;<a href="mailto:gor@gyolchanyan.com" target="_blank" class="">gor@gyolchanyan.com</a>&gt; wrote:<br class="">
&gt;<br class="">
&gt; Funny you should mention DSLs:<br class="">
&gt;<br class="">
&gt; let myQuery = sql """<br class="">
&gt;&nbsp; &nbsp; &nbsp; &nbsp;SELECT id, name, date<br class="">
&gt;&nbsp; &nbsp; &nbsp; &nbsp;FROM MyTable<br class="">
&gt;&nbsp; &nbsp; &nbsp; &nbsp;WHERE id &gt; 100<br class="">
&gt;&nbsp; &nbsp; &nbsp; &nbsp;"""<br class="">
&gt;<br class="">
&gt; let myLayout = NSLayoutConstraint """<br class="">
&gt;&nbsp; &nbsp; &nbsp; &nbsp;...<br class="">
&gt;&nbsp; &nbsp; &nbsp; &nbsp;"""<br class="">
&gt;<br class="">
&gt; let myPredicate = NSPredicate ""<br class="">
&gt;&nbsp; &nbsp; &nbsp; &nbsp;...<br class="">
&gt;&nbsp; &nbsp; &nbsp; &nbsp;"""<br class="">
&gt;<br class="">
&gt;&gt; On Jun 15, 2017, at 2:05 PM, David Hart &lt;<a href="mailto:davidhart@fastmail.com" target="_blank" class="">davidhart@fastmail.com</a>&gt; wrote:<br class="">
&gt;&gt;<br class="">
&gt;&gt; Personally, I have never felt that need.<br class="">
&gt;&gt;<br class="">
&gt;&gt; Trailing closures fill of need of making Swift a good candidate for building DSLs, where they make the function calls look more like first-class operations. But I don’t think that trailing strings would be as useful.<br class="">
&gt;&gt;<br class="">
&gt;&gt; David.<br class="">
&gt;&gt;<br class="">
&gt;&gt;&gt; On 15 Jun 2017, at 11:54, Gor Gyolchanyan via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank" class="">swift-evolution@swift.org</a>&gt; wrote:<br class="">
&gt;&gt;&gt;<br class="">
&gt;&gt;&gt; Good day, swift evolution community!<br class="">
&gt;&gt;&gt;<br class="">
&gt;&gt;&gt; I'll just get right to it...<br class="">
&gt;&gt;&gt;<br class="">
&gt;&gt;&gt; Did anyone else beside me wished this was a thing?<br class="">
&gt;&gt;&gt;<br class="">
&gt;&gt;&gt; func parse(allowSomeBehavior: Bool = true, source: String) {<br class="">
&gt;&gt;&gt;&nbsp; &nbsp; &nbsp;// ...<br class="">
&gt;&gt;&gt; }<br class="">
&gt;&gt;&gt;<br class="">
&gt;&gt;&gt; parse(allowSomeBehavior: false) """<br class="">
&gt;&gt;&gt;&nbsp; &nbsp; &nbsp;This is a source string<br class="">
&gt;&gt;&gt;&nbsp; &nbsp; &nbsp;that contains a number of lines of text<br class="">
&gt;&gt;&gt;&nbsp; &nbsp; &nbsp;which is passed to the function `parse`<br class="">
&gt;&gt;&gt;&nbsp; &nbsp; &nbsp;"""<br class="">
&gt;&gt;&gt;<br class="">
&gt;&gt;&gt; parse """<br class="">
&gt;&gt;&gt;&nbsp; &nbsp; &nbsp;The exact same thing as above<br class="">
&gt;&gt;&gt;&nbsp; &nbsp; &nbsp;except no other parameters are specified<br class="">
&gt;&gt;&gt;&nbsp; &nbsp; &nbsp;"""<br class="">
&gt;&gt;&gt;<br class="">
&gt;&gt;&gt; _______________________________________________<br class="">
&gt;&gt;&gt; swift-evolution mailing list<br class="">
&gt;&gt;&gt; <a href="mailto:swift-evolution@swift.org" target="_blank" class="">swift-evolution@swift.org</a><br class="">
&gt;&gt;&gt; <a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank" class="">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br class="">
&gt;&gt;<br class="">
&gt;<br class="">
<br class="">
_______________________________________________<br class="">
swift-evolution mailing list<br class="">
<a href="mailto:swift-evolution@swift.org" target="_blank" class="">swift-evolution@swift.org</a><br class="">
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank" class="">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br class="">
</blockquote></div>
</div></blockquote></div><br class=""></div></body></html>