On 05/30/2010 08:49 AM, Don wrote:
Simen kjaeraas wrote:
Leandro Lucarella <[email protected]> wrote:

<g>. I just think that @ shouldn't be an excuse to be careless --
anything with an @ in front is still part of the language. That's
all.

It shouldn't, that's (was?) the point of @. If the point of @ was to
create a namespace for keywords, it sucks...

With compiler- or language-given @keywords, there is no difference
from other keywords, except they don't eat valid identifiers. With a
user-configurable system, it's still part of a language, but that
language is specific to the component in which the @keywords are
being used, and thus does not pollute the namespace of keywords for
other projects.

Except that they do eat identifiers for user-definable attributes...

Well, that's because in other languages (Java, C#), attributes are first class citizens and they have a namespace too. So it's like saying "Oh, you can't have a class named Object in D because Object is already a class", which is not true because you can disambiguate with a namespace. The same is true for attributes in Java and C#... but not for D. :-(

http://java.sun.com/javase/7/docs/api/java/lang/Deprecated.html

In Java, I can create my own @Deprecated annotation without problem.

Reply via email to