> On Feb 28, 2017, at 4:14 PM, David Hart <[email protected]> wrote: > > >> On 28 Feb 2017, at 22:45, Matthew Johnson via swift-evolution >> <[email protected] <mailto:[email protected]>> 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.
I think proposals have occasionally seen this kind of clarification during review. In any case, thanks for confirming your intent. I just wanted to make sure this is what you expected also. > >>> 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 >> [email protected] <mailto:[email protected]> >> https://lists.swift.org/mailman/listinfo/swift-evolution >
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
