[swift-evolution] [Pitch] Require "infix" for infix operator function declarations

G B g.c.b.at.work at gmail.com
Tue Jul 12 00:52:46 CDT 2016


Personally this one wouldn’t bother me to require, but It seems the Swift way is to not require things that can be inferred by context so I’m ok with just allowing it.

> On Jul 11, 2016, at 9:03 PM, Jacob Bandes-Storch via swift-evolution <swift-evolution at swift.org> wrote:
> Currently, "infix" is not required/allowed on an operator function definition, but "prefix" and "postfix" are:
>     prefix operator ^^ {}   // valid
>     postfix operator ^^ {}  // valid
>     infix operator ^^ {}    // valid
>     prefix func ^^(operand: Int) {}  // valid
>     postfix func ^^(operand: Int) {} // valid
>     infix func ^^(lhs: Int, rhs: Int) {}   // error: 'infix' modifier is not required or allowed on func declarations
>     func ^^(lhs: Int, rhs: Int) {}         // valid
> It seems like this was removed because it can be inferred from the number of arguments (https://github.com/apple/swift/commit/3ad9c58c18f0331444114e2eae3e772e702c326f <https://github.com/apple/swift/commit/3ad9c58c18f0331444114e2eae3e772e702c326f>).  But IMO the inconsistency from other operator function decls/defs is jarring.
> How does everyone feel about reinstating the "infix" modifier on functoins? (It was removed before the open-source release and the advent of swift-evolution, so I thought it'd be worth a public review.)
> Jacob
> _______________________________________________
> 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/20160711/5c9bbd20/attachment.html>

More information about the swift-evolution mailing list