Except "b" is the main focus of the where clause and b was just in the 
preceding if condition. 

I feel like we are trying to find ways to break the current where clause even 
though we've enjoyed it for almost a year now. I had no idea it was problematic 
and restrictive. I thought it made its intent very clear...leading to very 
readable code. 

Pretty soon almost every construct but conditionals will be allowed to have 
where clauses, and THAT seems inconsistent to me. 

...what exactly is the current problem? Can someone show me a real world 
example?? I've already forgotten it in all of this discussion -_-

Brandon 

> On May 31, 2016, at 3:47 PM, Xiaodi Wu via swift-evolution 
> <[email protected]> wrote:
> 
> 
> 
> On Tue, May 31, 2016 at 2:45 PM, Christopher Kornher via swift-evolution 
> <[email protected]> wrote:
>>>> 
>>>> Not allowed:
>>>> …
>>>> let a = a
>>>> let b = b where b > 10 && a > 5
>>> 
>>> Why would this not be allowed by your rule? You're making use of `b` in 
>>> your where clause. As I demonstrated above, essentially any assertion can 
>>> be rewritten to work around your rule. In general:
>> 
>> It is not allowed because  ‘a’ is defined in the line above. It must be 
>> defined in the ‘if let’ associated with the where in which it is mentioned.
> 
> That's a much more restrictive where clause than you proposed earlier. You'd 
> not be able to write:
> 
> ```
> let b = b where b > anyOtherVariable
> ``` 
> 
> _______________________________________________
> swift-evolution mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to