[swift-evolution] [Pitch] Replace 'inout' with '&'

Slava Pestov spestov at apple.com
Fri Dec 18 20:10:54 CST 2015

> On Dec 18, 2015, at 5:23 PM, Joe Groff via swift-evolution <swift-evolution at swift.org> wrote:
> For Swift 3, we're planning to phase out 'var' parameters in functions, and we're also making it so that language keywords are valid argument labels. With both of these changes pending, I have a hard time not reading:
> func foo(inout x: Int)
> as an argument labeled `inout` instead of an unlabeled argument bound to `x`. Once `var` is phased out, `inout` would also be the only remaining case where quoting is necessary to use a name as an argument label. The `inout` keyword has always struck me as weird, since it violates definition-follows-use—maybe we should replace it with the `&` sigil, mirroring its usage in call sites.

<bikeshed>what about @inout?</bikeshed>

> -Joe
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20151218/507da6af/attachment.html>

More information about the swift-evolution mailing list