On Tuesday, 25 April 2017 at 18:32:09 UTC, Steven Schveighoffer wrote:
I missed this part. Now that I read that, I think we aren't going to gain much by having this language feature internal to the compiler.

The way I understood it, the feature will only stay internal to the compiler until it's deemed "safe" for general use.

If we want to limit usage, what I'd *rather* see is that the @future (or TBD attribute) only has special meaning inside object.d. Having to adjust a hard-coded compiler list seems like it will result in zero PR changes (save the one that prompted this DIP) that might give us any insight into whether this is a useful feature.

The proposal does include something like that.

Alternatively, if it proves to be simpler to implement, the feature can be added as an attribute with reserved double-underscore prefix (i.e. @__future) with compiler checks ensuring that it is not used outside of core.*/std.*/object modules. If that course of action is chosen, such an attribute should be defined in the core.attribute module of DRuntime.

Reply via email to