<html><body><div>I am strictly against requiring parentheses in closure expressions. Parentheses are visual clutter if not really needed and for a closure expression there is no need for parentheses as the parameter list is already nicely bracketed by `{ ... in`.<br></div><div>Actually I would argue that parentheses around parameter lists in closure expressions should be prohibited for that reason.<br data-mce-bogus="1"></div><div><br data-mce-bogus="1"></div><div>I'm not fond of requiring parentheses around single non-tuple parameters in type declarations either but I could probably grudgingly live with that change.<br data-mce-bogus="1"></div><div>But keep away from closure expressions, please! There is nothing ambiguous there.<br data-mce-bogus="1"></div><div><br data-mce-bogus="1"></div><div>-Thorsten<br data-mce-bogus="1"></div><div><br data-mce-bogus="1"></div><div><br>Am 27. April 2016 um 00:07 schrieb David Owens II via swift-evolution <swift-evolution@swift.org>:<br><br><div><blockquote type="cite"><div class="msg-quote" style="word-wrap: break-word;" data-mce-style="word-wrap: break-word;"><br class=""><div><blockquote type="cite" class=""><div class="">On Apr 26, 2016, at 1:31 PM, Chris Lattner <<a href="mailto:clattner@apple.com" class="" data-mce-href="mailto:clattner@apple.com">clattner@apple.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div style="word-wrap: break-word;" class="" data-mce-style="word-wrap: break-word;"><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Apr 25, 2016, at 11:28 PM, David Owens II via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="" data-mce-href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div style="word-wrap: break-word;" class="" data-mce-style="word-wrap: break-word;"><div class=""><div class="" style="word-wrap: break-word;" data-mce-style="word-wrap: break-word;"><span style="color: #333333;" data-mce-style="color: #333333;" color="#333333"><div class=""><div style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';" class="" data-mce-style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';"><b class="">What is your evaluation of the proposal?<br class=""></b></div><div style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';" class="" data-mce-style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';">I reluctantly agree with the proposal with the following caveat: I do not agree with the rationale to support being able to choose to omit the () for the parameter list of the closure declaration.</div><div style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';" class="" data-mce-style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';"><br class=""></div><div style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';" class="" data-mce-style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';">I see no cohesive argument that says that the parens should be required in some cases but not in others when talking about parameter lists.</div><div style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';" class="" data-mce-style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';"><br class=""></div></div><div style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';" class="" data-mce-style="font-family: 'helvetica neue' , 'helvetica' , 'segoe ui' , 'arial' , 'freesans' , sans-serif , 'apple color emoji' , 'segoe ui emoji' , 'segoe ui symbol';">I believe the proposal should be amended that the following should be the only allowable forms:</div></span></div></div></div></div></blockquote><br class=""></div><div class="">Hi David,</div><div class=""><br class=""></div><div class="">To be clear, this proposal is not about changing closure expressions, it was just a FAQ, and the section at the end is simply my personal opinion. Changing closure expression syntax would be a separate proposal.</div></div></div></blockquote><br class=""></div><div>My argument is changing the parameter list in one context but not the other is only solving one of the potentially ambiguous use cases instead of the general case. My opinion is they should be changed as the same time if they are going to be changed at all.</div><div><br class=""></div><div>-David</div><br class=""><div class="_stretch"><span class="body-text-content">_______________________________________________<br>swift-evolution mailing list<br><a href="mailto:swift-evolution@swift.org" data-mce-href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a><br><a href="https://lists.swift.org/mailman/listinfo/swift-evolution" data-mce-href="https://lists.swift.org/mailman/listinfo/swift-evolution">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br></span></div></div></blockquote></div></div></body></html>