> On Jun 12, 2017, at 3:13 PM, Jens Persson <j...@bitcycle.com> wrote:
> On Mon, Jun 12, 2017 at 8:52 PM, John McCall <rjmcc...@apple.com 
> <mailto:rjmcc...@apple.com>> wrote:
> 
> We really do want to tie most of these features specifically to function 
> calls.
> 
> 
> I'm not sure if I understand what you mean. Do you mean that you really don't 
> want these features to require changes to the type system?

That's correct.  There's a lot of special structure to function calls — labels, 
overloading, default arguments, variadics, inout arguments, (eventually) 
borrowed arguments — that we do not want to introduce into the first-class 
tuple system, or at least not in the exact same way.  In some cases, like 
overloading or defaulted and inout arguments, it cannot be done without a major 
and unwanted model shift.  In other cases, like variadics, it could 
theoretically be done but would complicate the type system in ways we are 
trying to avoid.

Regardless, the existence of any call-specific structure at all implies that 
generic value forwarding cannot always be sufficient to do generic argument 
forwarding.  Maybe that's an argument for not having any call-specific 
structure, but we do have that and it's not going away.

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

Reply via email to