> On 28 Feb 2017, at 22:45, Matthew Johnson via swift-evolution 
> <swift-evolution@swift.org> wrote:
> 
>> 
>> What is your evaluation of the proposal?
> +1, this is a fantastic proposal!  I
> 
> The proposal does not specifically call out whether a class may inherit from 
> a subclass of a superclass constraint when a typealias is used in the 
> inheritance list.  I believe the following should be valid, but it would be a 
> good idea to make that explicit:
> 
> class B {}
> class D: B {}
> protocol P {}
> typealias BP = B & P
> 
> class Foo: D, BP

It’s true that the proposal is not very clear about that specific scenario, but 
I see it as valid. I touched about it in the “inheritance clauses and 
typealias” section but only mentioned inheritance from the class in the 
constraint. But rule 2 of the proposal kind of implies it: the first element in 
the protocol composition syntax can be a class type to enforce the existential 
to be a subtype of the class.

It would be worth being more precise about it, but not sure how a proposal can 
be *fixed* during review.

>> Is the problem being addressed significant enough to warrant a change to 
>> Swift?
> Yes, we are not able to correctly import class constrained protocols from 
> Objective-C.
> 
>> Does this proposal fit well with the feel and direction of Swift?
> Very much.
> 
>> If you have used other languages or libraries with a similar feature, how do 
>> you feel that this proposal compares to those?
> N/A
> 
>> How much effort did you put into your review? A glance, a quick reading, or 
>> an in-depth study?
> In-depth study of the original drafts.  Quick read of the final review 
> proposal.
> _______________________________________________
> 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