<div dir="ltr"><div>In the past, there has been some interest in refining the behavior of ExpressibleByStringInterpolation (née StringInterpolationConvertible), for example:</div><div><div><br class="gmail-Apple-interchange-newline">- Ability to <b>restrict the types that can be used</b> as interpolation segments</div><div>- Ability to <b>distinguish the string-literal segments</b> from interpolation segments whose type is String</div></div><div><br></div><div>Some prior discussions: <br></div><div>- &quot;StringInterpolationConvertible and<span class="gmail-Apple-tab-span" style="white-space:pre">        </span>StringLiteralConvertible inheritance&quot; <a href="https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160516/017654.html">https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160516/017654.html</a></div><div>- Sub-discussion in &quot;Allow multiple conformances to the same protocol&quot; <a href="https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160606/020746.html">https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160606/020746.html</a></div><div>- &quot;StringInterpolationConvertible: can&#39;t distinguish between literal components and String arguments&quot;  <a href="https://bugs.swift.org/browse/SR-1260">https://bugs.swift.org/browse/SR-1260</a> / rdar://problem/19800456&amp;18681780</div><div>- &quot;Proposal: Deprecate optionals in string<span style="white-space:pre"> </span>interpolation&quot; <a href="https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160516/018000.html">https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160516/018000.html</a></div><div><br></div><div><br></div><div>About Swift 4, Chris wrote:</div><div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"> - <b>String re-evaluation:</b> String is one of the most important fundamental types in the language.  The standard library leads have numerous ideas of how to improve the programming model for it, without jeopardizing the goals of providing a unicode-correct-by-default model.  Our goal is to be better at string processing than Perl!</blockquote></div><div><br></div><div>I&#39;d be interested in any more detail the team can provide on this. I&#39;d like to talk about string interpolation improvements, but it wouldn&#39;t be wise to do so without keeping an eye towards possible regex/pattern-binding syntax, and the String refinements that the stdlib team has in mind, if there&#39;s a chance they would affect interpolation.</div><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div>Discuss!<br></div><div><br></div><div>-Jacob</div></div></div></div>
</div>