> I think => may be confusing in many of shown cases. Its a cause/efect symbol 
> and can be also and operator.
> 
> I put again the idea of with for the newcomers:
> 
> with (  parameters ) -> return_type {
>     statements
> }
> 
> 
> sorted = names.sort( with(s1, s2){ s1 > s2 } )
> 
> sorted = names.sort( with{ $0 > $1 } )
> 
> 
> sorted = names.sort()  with { $0 > $1 }  
> 
> reversed = names.sort with(s1,s2){
> 
>       //bla bla code
>       return resultVar 
> }
>  
> reversed = names.sort with { $0 > $1 }  

I don't think this is particularly helpful. Even if you don't know what a 
closure is, if you're familiar with any C-like language, or with other parts of 
Swift's syntax, you know that `{ ... }` indicates a piece of code. That's all 
you really need to know in order to understand what `names.sort { $0 > $1 }` 
*means*, even if you don't immediately know how it *works*.

We don't need a keyword hopping up and down shouting "CLOSURE! CLOSURE! 
CLOSURE!"; all we need is a syntactic marker delimiting the boundary between 
the parameter list and whatever's adjacent to it. Your `with` and `delegating` 
keywords hop up and down. The current `in` keyword marks the boundary; so does 
whatever we actually call my proposed `=>` symbol. (Again, I don't actually 
like that specific symbol—think of it as a placeholder.)

-- 
Brent Royal-Gordon
Architechies

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

Reply via email to