You’re welcome. If you want to learn how Metatypes and Existential Metatypes 
work in Swift, take a look at our proposal where we discuss the current 
situation and how we want these types to be in Swift.

Link

When learning about existential types, our proposal might be a little bit hard 
to follow. Feel free to ask.



-- 
Adrian Zubarev
Sent with Airmail

Am 21. November 2016 um 20:42:12, Toni Suter (tonisu...@me.com) schrieb:

Hi Adrian,

Thanks for the link!

Best regards,
Toni

Am 21.11.2016 um 11:52 schrieb Adrian Zubarev <adrian.zuba...@devandartist.com>:

Private message (I currently don’t have enough time to answer everything):

Take a look at his small part: 
https://en.wikipedia.org/wiki/Type_system#Existential_types




-- 
Adrian Zubarev
Sent with Airmail

Am 21. November 2016 um 11:09:43, Toni Suter via swift-users 
(swift-users@swift.org) schrieb:

Hi everyone,

I am trying to understand existentials in Swift. I understand that in the
following code, P1 & P2 is an existential type, because it supports values
from all types that conform to both P1 and P2. 

protocol P1 {}
protocol P2 {}
var x: P1 & P2

However, this raises a few questions for me:

1. In the following code, is x also an existential?
protocol P {}
var x: P

The proposals / blog posts that I read always talk about the protocol 
composition syntax,
but to me, this is the same as the first example, just with only a single 
protocol requirement.

2. Are Any and AnyObject also existentials?
So far, my understanding is:
Any is an existential with no requirements
AnyObject is an existential with only a class requirement

3. Why can I not extend Any / AnyObject?
For example, AnyObject is a protocol defined in the standard library. Why is it 
not extensible?

Thanks and best regards,
Toni
_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users

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

Reply via email to