<div style="white-space:pre-wrap">The only point worth mentioning is that Python's syntax doesn't handle indentation in a useful way. It's created a lot of trouble for me and others over the years.</div><br><div class="gmail_quote"><div dir="ltr">On Wed, 16 Dec 2015 at 10:58, Dave Abrahams via swift-evolution <<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>> 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"><br><div><blockquote type="cite"><div>On Dec 16, 2015, at 10:47 AM, Chris Lattner via swift-evolution <<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>> wrote:</div><br><div><div style="word-wrap:break-word">On Dec 16, 2015, at 10:34 AM, Jordan Rose via swift-evolution <<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>> wrote:<br><div><blockquote type="cite"><div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote type="cite"><div><div>IOW, 'x' where x must be a Character, that is, an extended Unicode<br>grapheme cluster — represented in the source code as UTF8 or with the \u<br>notation. A shortcut for typing Character("x").<br></div></div></blockquote></div><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">We actually had this at one point, but it turned out that sometimes you wanted a Character and sometimes a UnicodeScalar, and in both cases your algorithm was probably wrong (cf. String is no longer a CollectionType). At that point it didn't offer any benefits over just regular string syntax, and it freed up the syntax for<span> </span><i>something</i> else.</div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br></div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">There's a fair amount of precedent for single-quoted strings being:</div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">- single characters (C, Java, C#)</div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">- unprocessed strings (shell scripts, Ruby)</div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">- exactly the same as double-quoted strings (Python)</div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br></div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">I (personally) wouldn't want them for multi-line literals, though.</div></div></blockquote><br></div><div>I agree that this would be weird syntax for multi-line literals:</div><div><br></div><div><br></div><div>let x = ‘</div><div>stuff</div><div>more stuff’</div><div><br></div><div>On the other hand, It could be a reasonable design to say that ‘xyz’ strings are a dual to “xyz” strings that disable escape expansion. If you did that, then you could end up with a world where multi-line strings could be either:</div><div><br></div><div>let x = “””</div><div>stuff with\tescapes \(42)</div><div>“””</div><div><br></div><div>and:</div><div><br></div><div>let x = ‘''</div><div>escapes\(42)not processed!\n</div><div>‘''</div><div><br></div><div>Please ignore the “smart” quotes above :-)</div></div></div></blockquote><br></div></div><div style="word-wrap:break-word"><div>I said this during the Swift 1 runup, and I'll say it again: Python has a design for this stuff that works. They didn't make any changes to it between Python 2 and 3, so it has proven itself with many generations of programmer. I still don't see any reason to invent something new. </div><br><div>
-Dave<div><br></div><br>
</div>
<br>
<img src="https://u2002410.ct.sendgrid.net/wf/open?upn=kKLYQ91ZFOe6ryzRU3CXyiq4yOweT6LjPwa6z8Qwa5e0MpYH16fSA8RtOEjUg2ClObyWZttlTj3E7cI-2BY9diBVLmwvZPErdKWvltlSIDWKdwckadlngcPW4HxVlses23cfoBwTgd5Y26YAqnSRSVnZ3jVanOY7UPhTD-2Bk8mldDJOOttHLV5t8CfM876vrONS9Jj61aTZHL7WwXat54Lkb5KIJfs7AZ7kFnaTiDPC8Zo-3D" alt="" width="1" height="1" border="0" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important">
</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>