> On Dec 19, 2015, at 5:58 PM, Kevin Ballard via swift-evolution > <[email protected]> wrote: > > There is not in fact an emphasis on conciseness. This has been repeated many > times by the swift team. Conciseness is not a goal of Swift, but > expressiveness absolutely is. Braces are a well-understood and simple way to > express the notion of a scope/closure. And FWIW removing braces means you > have to come up with a completely different syntax for closures, because > indentation does not suffice there. > > Also, "don't be like C" is not even remotely a goal of Swift. The Swift > syntax is C-like in many respects. "Be like C" isn't a goal either of course, > but when deciding between two alternatives that have no compelling arguments > either way, picking the one that would be more familiar to Obj-C programmers > is usually a good idea.
Kevin got it exactly right, but I’d expand that last bit a bit to: “… picking the one that is most familiar to programmers in the extended C family is a good idea. The extended C family of language (which includes C, C++, ObjC, but also C#, Java, Javascript, and more) is an extremely popular and widely used set of languages that have a lot of surface-level similarity. I don’t claim to know the design rationale of all of these languages, but I surmise that this is not an accident: programmers move around and work in different languages, and this allows a non-expert in the language to understand what is going on. While there are things about C that are really unfortunate IMO (e.g. the declarator/declaration specifier part of the grammar) there is a lot of goodness in the basic operator set, focus on dot syntax, and more. I do agree that there are some benefits to ditching braces and relying on indentation instead, but there are also downsides. Deviating from the C family in this respect would have to provide *overwhelmingly* large advantages for us to take such a plunge, and they simply don’t exist. -Chris _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
