[swift-evolution] [Pre-proposal] Fix function type grammar

Anton Zhilin antonyzhilin at gmail.com
Sun Jul 3 19:12:00 CDT 2016


2016-07-04 1:18 GMT+03:00 Vladimir.S <svabox at gmail.com>:
>
> Right, there is some impact on existing code that was omitted
>> in the proposal. And it wasn't considered during review. Awkward.
>>
>
> Probably because some(many?) people (like me) did not understand that this
> proposal is much bigger than "Just require parentheses on function types",
> because IMHO the major idea of this proposal was disallow `Int->Int` syntax
> but not to disallow void parameter for zero parameter functions.
>
> I hope community will provide opinions regarding this issue and about the
> decision regarding the void parameter to argument-less functions, and if
> that decision is really expected and was clearly mentioned in the proposal.
>
> Personally I think we need to implement the proposal in all areas except
> this one and raise new proposal to make all things clear regarding
> argument-less functions.


Formally, we should. But I wonder how often the feature being removed was
used. I personally don't feel like it's that important. As Chris suggested,
it may be enough to clarify it in SE-0066.

We could add implicit convertion
>> () -> T  to  (U) -> T
>> I feel that is one constructive way out.
>>
>
> Could you clarify the suggestion with some details?
> Do you suggest, that we can pass ()->T where (U)->T is required?


Yes. By the way, Austin Zheng seems to disagree with this.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160704/94c92823/attachment.html>


More information about the swift-evolution mailing list