Sorry, I didn’t read your post carefully enough.  You are correct, this is not 
possible.

If you need to dig 3 levels deep into a tuple you may have cases where structs 
would be more appropriate.

> On Dec 18, 2015, at 10:01 AM, Alexandre Lopoukhine <[email protected]> 
> wrote:
> 
> Matthew,
> 
> What I’m thinking about would be a true equivalent of the closure syntax, 
> where the following:
> 
> {$0.0.1.2} becomes
> 
> Tuple.0.1.2
> 
> I’m not aware of this being achievable at the language level today.
> 
> — Sasha
> 
> 
>> On 18 Dec 2015, at 16:34, Matthew Johnson <[email protected]> wrote:
>> 
>> This is already possible today.  You just need to write overloads for tuples 
>> of up to n members.  Are you asking for this to be a library feature?
>> 
>> 
>>> On Dec 18, 2015, at 9:30 AM, Alexandre Lopoukhine via swift-evolution 
>>> <[email protected]> wrote:
>>> 
>>> Hello everyone,
>>> 
>>> To tie into the discussion of shorthands for “map", here’s something that I 
>>> think is worth considering:
>>> 
>>> Skipping the motivation (mostly, I’m on a mission to eliminate the $ 
>>> character in my functional code), here’s a function definition:
>>> 
>>> func first<A,B>(tuple: (A,B)) -> A {
>>>  return tuple.0
>>> }
>>> 
>>> Having functions like this transforms
>>> 
>>> pairArray.map({$0.0})
>>> 
>>> into
>>> 
>>> pairArray.map(first)
>>> 
>>> This is not ideal, as it pollutes the global space, and there would need to 
>>> be tons of those for various tuple sizes.
>>> 
>>> Here’s an alternative:
>>> 
>>> pairArray.map(().0)
>>> 
>>> I think that this makes the intent pretty clear, as well as non-conflicting 
>>> with anything in the language.
>>> 
>>> What do you all think?
>>> 
>>> — Sasha
>>> _______________________________________________
>>> swift-evolution mailing list
>>> [email protected]
>>> https://lists.swift.org/mailman/listinfo/swift-evolution
>> 
> 

_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to