[swift-evolution] Proposal: Always flatten the single element tuple
svabox at gmail.com
Thu Jun 8 08:01:40 CDT 2017
On 08.06.2017 12:17, Víctor Pimentel Rodríguez via swift-evolution wrote:
> On Thu, Jun 8, 2017 at 5:15 AM, Susan Cheng via swift-evolution
> <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
> Just a thought
> if parentheses is important, why the tuples are not?
> This is stated on the proposal (and not in previous proposals):
> We understand that this may be a departure from the current convention that a set
> of parentheses enclosing a single object are considered semantically meaningless,
> but it is the most natural way to differentiate between the two situations
> described above and would be a clearly-delineated one-time-only exception.
> This proposal marks a one-time-only exception, to differentiate the parenthesis
> needed to enclose a list of closure parameters and the parenthesis needed for tuples.
> That's adding an exception for implementing a regression.
> The more I think about it, the more I hate* this proposal.
> * Well, not _hate_, let's say slightly dislike :P
Please look here:
into "Proposed solution" section:
Parentheses will be required in function types. Examples:
Int -> Int // error
(Int) -> Int // function from Int to Int
((Int)) -> Int // also function from Int to Int
Int, Int -> Int // error
(Int, Int) -> Int // function from Int and Int to Int
((Int, Int)) -> Int // function from tuple (Int, Int) to Int
let f: () -> Int // function with no parameters
let g: (()) -> Int // function taking a single () parameter
let h: ((())) -> Int // function taking a single () parameter
f(); g(()); h(()) // correct
f(()); g(); h() // errors
Do you also hate* SE-0066?
> Víctor Pimentel
> swift-evolution mailing list
> swift-evolution at swift.org
More information about the swift-evolution