On Wednesday, 22 October 2014 at 19:13:58 UTC, Shriramana Sharma
via Digitalmars-d-learn wrote:
Hello. See http://dlang.org/attribute. 3 attributes starting at
http://dlang.org/attribute#disable have a @ in front.
Apparently safe,
trusted and system also do, though these are documented
elsewhere:
http://dlang.org/function.html#function-safety.
Why are some language-defined attributes starting with @ and
others
not? Wouldn't it be consistent and less-confusing to, say, only
use @
for user-defined attributes and not these language-defined ones?
It's a historical thing. Walter didn't want to add more keywords,
so we put @ in the front of some of the new ones. User-defined
attributes didn't even exist at the time. Those were added far
later. It would be nice if none of the built-in attributes had @
on them, but it's far too late now. And by the way, there's also
@property, so there's four of them with @.
- Jonathan M Davis