[swift-evolution] Pitch: Compound name `foo(:)` for nullary functions

David Sweeris davesweeris at mac.com
Wed Feb 22 12:30:15 CST 2017

> On Feb 22, 2017, at 7:48 AM, Matthew Johnson via swift-evolution <swift-evolution at swift.org> wrote:
> I like this idea.  I think you made the right choice of syntax given the alternatives considered.  To me `foo(_)` and `foo(:)` equally imply presence of an argument.  The former looks like an anonymous (unnamed) argument and the latter includes the colon which only follows an argument.  Between the two `foo(:)` is the better choice because it doesn’t look like a pattern as has been pointed out.
> I’m going to do a little brainstorming to try and come up with something that works and doesn’t imply an argument at all but suspect I’ll come up empty handed.

What about “foo(Void)”? It might be fairly easily confused with “foo(:Void)”, but in practice, how likely is it for someone to declare both `foo()` and `foo(_: Void)`?

- Dave Sweeris

More information about the swift-evolution mailing list