Interesting suggestion, but IMO this will produce a question about new
naming conversion in Swift 3.0 (noun/verb, -ing/-ed, etc) because using
your suggestion we could want to use:
array.sort(..) // mutating
let array2 = array.sort(..) // non-mutating, instead of array.sorted()
Also, technically we can assign a value to Void function(yes, compiler
warning will be produced, but just warning, not error):
var something = array.sort(..) // mutating,currently this is valid code
// something == ()
On 26.04.2016 13:56, Andrew Bennett via swift-evolution wrote:
Hey,
I thought I would post another message to this thread because I think it
was missed when I first sent it (I made the mistake of sending it at 1am
San Francisco time, I'm in Australia).
I appreciate any feedback :)
Thanks,
Andrew
On Mon, Mar 28, 2016 at 7:21 PM, Andrew Bennett <[email protected]
<mailto:[email protected]>> wrote:
Swift can resolve functions based on the return type. However, when the
result is unused a single function often can't be resolved without
explicitly specifying the type.
|func example() { ... } func example() -> Int { ... } example() as Void
example() as Int |
This proposal disambiguates some cases:
* Preferring functions with a |*Void*| return type when the result
*is* discarded.
* Preferring functions with a *non-|Void|* type when the result *is
not* discarded.
These example will be unambiguous:
|example() // will prefer a `Void` function let x = example() // will
prefer a non-`Void` function|
You can read the full latest version of the proposal here:
https://github.com/therealbnut/swift-evolution/blob/andrew-disambiguate-return-type/proposals/0000-disambiguate-return-type.md
This is the original version
<https://github.com/therealbnut/swift-evolution/blob/59d0f0b9bdabcfd675f36824232a8efa4a5f9152/proposals/0000-disambiguate-return-type.md>
of
the proposal.
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution