> Consider these two examples:
> 
> let string_1 = """foo"""
> 
> 
> let string_2 = """
>     foo
>     """
> What’s the intuitive result you’d expect without taking all the long talk 
> from the list into account?
> 
> Personally, I’d say string_1 == string_2 is true.
> 

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:

let a = """
This is line one
This is line two"
"""

let b = """
This is line three
This is line four
"""

(a + b) == """
This is line one
This is line two
This is line three
This is line four
"""

That seems like a reasonable model to work with multi-line strings.

-BJ
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to