> On Sep 23, 2017, at 10:36 PM, Robert Widmann via swift-dev 
> <swift-dev@swift.org> wrote:
> 
> Why is the arrow carrying the “Has Value Semantics Bit” rather than it being 
> part of a protocol composition on an argument type, or a convention bit on 
> the parameter like ‘inout’?

Value semantics is a property of operations, not really of types. I would say 
the function arrow is the right place for it, since not-value-semantics 
propagates in the same manner as an effect like "throws". Dave, you might in 
fact look at how 'throws' type checking is implemented as a model for what 
you're trying to do.

-Joe

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

Reply via email to