Strong +1. I really need this feature to improve and simplify my existing code. 

> On Sep 23, 2016, at 5:50 PM, Austin Zheng via swift-evolution 
> <swift-evolution@swift.org> wrote:
> 
> * What is your evaluation of the proposal?
> 
> +1. I very much want to see this in Swift, and it seems like a logical 
> progression that has the potential to eliminate ugly workarounds.
> 
> * Is the problem being addressed significant enough to warrant a change to 
> Swift?
> 
> Yes. Right now the desired relationships between the associated types of a 
> protocol must be written out at each site of use (for example, a generic 
> function declaration that involves that protocol type). When defining a type 
> that conforms to such a protocol these relationships must either be 
> discovered through documentation, or by examining the APIs with which the 
> conforming type will be used.
> 
> By changing this implicit contract (through documentation + use site 
> constraints) into an explicit contract (through constraints directly 
> expressed at the point where the associated types are defined), programmers 
> seeking to write conforming types have an easier time understanding how the 
> protocols they are conforming to are intended to work, and programmers 
> seeking to write APIs involving those protocols don't need to spell out the 
> constraints repeatedly.
> 
> * Does this proposal fit well with the feel and direction of Swift?
> 
> Yes. We already have a pretty regular regime for the use of `where` to define 
> constraints, for example in generic type and function declarations and when 
> defining constrained extensions. Adding support for `where` to associated 
> types would be a natural extension of the existing ability to specify 
> protocol conformance, and its semantics would not be surprising to those 
> familiar with the other uses of `where`. (This comment I think applies to all 
> three of the proposed syntaxes.)
> 
> * 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?
> 
> Read the review, followed most of the pertinent threads over the past few 
> months with varying degrees of attentiveness.
> _______________________________________________
> 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