[swift-evolution] What are the rules for including @ with attributes/keywords and the possibility of removing it
Adriano Ferreira
adriano.ferreira at me.com
Mon Jan 11 13:19:41 CST 2016
Hi,
I still would like to better understand that.
Is the reason to use `@` to hint the compiler / optimizer? Why not make `autoclosure`, `noescape`, etc. special keywords as well?
— A
> On Jan 11, 2016, at 1:19 PM, Brandon Knope via swift-evolution <swift-evolution at swift.org> wrote:
>
> Ok thanks I’ll look into it! It may remove some confusion / unclarity for me
>
> Brandon
>
>> On Jan 11, 2016, at 1:18 PM, Joe Groff <jgroff at apple.com <mailto:jgroff at apple.com>> wrote:
>>
>>
>>> On Jan 11, 2016, at 10:17 AM, Brandon Knope <bknope at me.com <mailto:bknope at me.com>> wrote:
>>>
>>>
>>>> On Jan 11, 2016, at 1:14 PM, Joe Groff <jgroff at apple.com <mailto:jgroff at apple.com>> wrote:
>>>>
>>>>
>>>>> On Jan 11, 2016, at 9:49 AM, Brandon Knope via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
>>>>>
>>>>> @noescape
>>>>> @autoclosure
>>>>>
>>>>> Is there a particular reason why there is a @ prepending these attributes/keywords?
>>>>>
>>>>>
>>>>> func test(@autoclosure test: () -> Bool) -> Void
>>>>>
>>>>> vs.
>>>>>
>>>>> func test(autoclosure test: () -> Bool) -> Void
>>>>>
>>>>> It seems cleaner/clearer without @ sprinkled everywhere, but what is the rationale behind needing the @ symbol?
>>>>
>>>> Without the '@', you're declaring a parameter labeled 'autoclosure'.
>>>>
>>>> -Joe
>>>>
>>>
>>> What about “inout” then?
>>>
>>> And duh! I completely forgot about parameter labels -_-
>>
>> 'inout' is a special case, and we've reserved it as a keyword. There's a thread about moving 'inout' to eliminate this special case.
>>
>> -Joe
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
> https://lists.swift.org/mailman/listinfo/swift-evolution <https://lists.swift.org/mailman/listinfo/swift-evolution>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160111/78c4fa33/attachment.html>
More information about the swift-evolution
mailing list