accept @pure @nothrow @return attributes

Jonathan Marler via Digitalmars-d digitalmars-d at puremagic.com
Wed Jan 28 11:13:38 PST 2015


On Wednesday, 28 January 2015 at 19:04:50 UTC, Andrei 
Alexandrescu wrote:
> It may be the case you're using different definitions of the 
> term "contextual keyword". Far as I can tell you want the 
> identifier "nogc" be recognized in certain places by the 
> compiler as special, and otherwise just not be special at all. 
> That's a contextual keyword. If that's the case you were well 
> understood by both Walter and myself. I happen to recognize the 
> merit of contextual keyword in general, but Walter has a 
> stronger opposition to it. It doesn't seem to me this 
> particular application is compelling enough to warrant the 
> precedent. -- Andrei

Ok now we're getting somewhere.  I guess the next thing I'd like 
to ask is what is the argument against having a word be a 
function attribute in one instance and a regular identifier in 
another?

I would think the reason would be it could make the grammar 
ambiguous.  That's why I proposed it only be valid on the right 
hand side of the function to guarantee it doesn't introduce any 
ambiguity.  Other then that, I don't see any reason why it's a 
bad thing.  It doesn't make the syntax more complicated, it 
doesn't maker it harder to parse, I just don't see why its bad.

Note: keep in mind...I'm not asking why it's bad to have a 
keyword (recognized as a keyword by the lexer) also be an 
identifier, I'm asking why it's bad to have a function attribute 
also be an identifier.


More information about the Digitalmars-d mailing list