On 2012-11-07 10:22, Jonathan M Davis wrote:
It mainly came down to not wanting to add new keywords. By using @safe instead of safe, safe could still be used as a variable or function or whatnot. There was some discussion of which should have @ on them on which not (e.g. nothrow vs @nothrow was debated), but the decision was fairly arbitrary. If anything though, had we not cared about breaking code or whether D looked similar to other languages, we probably would have made _all_ attributes start with @ (including stuff like @public). It would have been wonderfully consistent that way, but it wasn't ultimately deemed a good idea.
And then we would suddenly have Objective-C :( -- /Jacob Carlborg