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@swift.org <mailto:swift-evolution@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):

https://github.com/apple/swift-evolution/blob/master/proposals/0110-distingish-single-tuple-arg.md

  *

    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.


    
<https://github.com/apple/swift-evolution/blob/master/proposals/0110-distingish-single-tuple-arg.md#impact-on-existing-code>

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:
https://github.com/apple/swift-evolution/blob/master/proposals/0066-standardize-function-type-syntax.md

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@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to