[swift-evolution] [swift-evolution-announce] [Review] SE-0089: Replace protocol<P1, P2> syntax with Any<P1, P2>
Matthew Johnson
matthew at anandabits.com
Sat Jun 11 07:44:29 CDT 2016
Sent from my iPad
> On Jun 11, 2016, at 7:31 AM, Thorsten Seitz via swift-evolution <swift-evolution at swift.org> wrote:
>
>
>>> Am 11.06.2016 um 14:23 schrieb Brent Royal-Gordon <brent at architechies.com>:
>>>
>>> The only magic would be that all type definitions (`protocol` etc.) which do not give a supertype they conform to, will implicitly conform to `Any`, i.e.
>>>
>>> protocol Foo { … }
>>>
>>> means
>>>
>>> protocol Foo : Any { … }
>>
>> Any is also the supertype of all structural types, and structural types cannot conform to protocols.
>
> AFAIK Swift does not support structural types and I am not sure whether we should change that. In that case `Any` would become magic, yes.
Functions and tuples are structural types, although it is probably possible to make tuples syntactic sugar for a Tuple type of we get the necessary variadic generics support.
>
> -Thorsten
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
More information about the swift-evolution
mailing list