On Thursday, 7 November 2013 at 15:55:47 UTC, Jonathan M Davis wrote:
Then should public and private be @public and @private in order to be consistent? Then we'd be inconsistent with C++, Java, C# etc. which would make it that much harder for folks to learn D. Would you want @static and @const?

One thing experimented with in Volt (D derivative) design is that all stuff that affects mangling/ABI gets own keyword without "@" and all stuff that fades away like UDA's is prefixed with "@". This implies @public and @private, yes, but is quite a simple and consistent rule on its own. We will see go it will work :) There are some tricky corner cases of course with stuff like @nogc/nogc.

P.S. There was a mention that introduction of UDA's has made addition of new @-prefixed built-ins impossible without breakage. It is not entirely true as symbols used in UDA's are qualified and conform to normal symbol lookup rules. Only problem is that built-in stuff is pure magic and has no own module.

Reply via email to