> On Dec 19, 2015, at 1:37 AM, Rob Mayoff via swift-evolution 
> <swift-evolution@swift.org> wrote:
> 
> When you access a static member of a type using the dot shortcut, Swift 
> evaluates the expression immediately.
> 
> Are you proposing that when you access a member of an instance, Swift 
> generate a closure?
> 
> Or are you proposing that Swift generate a closure or not depending on how 
> the expression's value is to be used?

I was thinking of it more in terms of binding the non-self arguments, but 
either way is effectively the same.  This would be necessary in all cases, 
although in the case of property getters and nullary methods there would no 
arguments to bind.

> Either way seems inconsistent with the static member situation, and like a 
> potential source of confusion: not everyone uses the One True Convention™ of 
> .Capitalized .Static .Members and .lowercase .instance .members, so one 
> cannot reliably deduce the outcome based on the case of the character after 
> the dot.

You can easily deduce it by the type context which you need to know to 
understand the code anyway.  As capitalization is not enforced by the language 
it is not reasonable to deduce anything based on that.

If you think it could potentially be confusing that is a reasonable position.

> 
> On Thu, Dec 17, 2015 at 9:27 PM, Matthew Johnson via swift-evolution 
> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote:
> anArray.map{$0.anInstanceMethod()}
> 
> becomes:
> 
> anArray.map(.anInstanceMethod())
>  _______________________________________________
> 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