Sent from my iPhone > On 7 Apr 2017, at 12:17, Haravikk <[email protected]> wrote: > > >>> On 6 Apr 2017, at 21:47, David Hart <[email protected]> wrote: >>> >>> >>>> On 6 Apr 2017, at 22:34, Haravikk via swift-evolution >>>> <[email protected]> wrote: >>>> >>>> >>>> On 6 Apr 2017, at 20:35, Joe Groff via swift-evolution >>>> <[email protected]> wrote: >>>> >>>> • What is your evaluation of the proposal? >>> >>> I'm a -1 for several reasons, mostly subjective but still. First thing is >>> that I'm generally not comfortable with encouraging the use of multi-line >>> strings at all. These are things that usually should be templated or >>> localised, and personally I don't see what's inconvenient about >>> concatenating on those occasions where you can't (or just don't want to); >>> I'm actually of the opinion that this is the kind of thing that should be >>> awkward and annoying, to encourage developers to think about what they're >>> doing. >> >> IMHO, there are plenty of uses for multi-line strings that are entire valid >> and acceptable. SQL queries is the example I encounter the most in my >> day-to-day work. And concatenating makes working with them very cumbersome. > > Maybe, but with SQL I long moved on to using placeholders for variables, > which makes most statements fairly compact. And in fact these days I almost > entirely use stored procedures, so most SQL statements I work with are just > enough to call a procedure. I use placeholders, but there's no way a 4-5 join query fits on a line even then. And those can become fairly common quickly. > Even so, while that may be an argument for the need for multi-line strings > it's a use case that would still be better handled by continuation quotes > IMO, but again, they don't offer so much added convenience over concatenation > to really be worth it. Why would it be a use case for continuation quotes instead of multi-line strings? I don't follow. > Also, just wanted to add, but those arguing against continuation quotes on > the basis of pasting into Swift; you already can paste into Swift using > regular double quotes I don't understand. If I paste a multi line SQL query between double quotes in Swift, the resulting codes does not compile. > , you just don't get to indent text and have the indentation magically > handled for you. It's the magic handling of indentation that makes me most > uncomfortable about the main proposal. This is why I mentioned the idea of > using a compiler directive which would be more explicit in what's going on, > as well as being more discoverable as it would provide something easy to > search for. Like so: > > let foo = #trimleft(" > foo > bar > baz > ") > > Becoming (behind the scenes): > > let foo = "foo > bar > baz" > > It has the same benefits as heredocs but without any new syntax, and someone > new to the language can just search for "Swift #trimleft" (or whatever it'd > be called) to find out what it does exactly.
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
