On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote:
DIP 1012 is titled "Attributes".

https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md

Terminology:
I was confused by the term "attribute group". Although the term is defined in the DIP, it implies a combination of attributes rather than a mutually exclusive attribute category. Still having trouble understanding the DIP in detail due to this.

Rationale:
The rationale is weak, but reading the "Description" appears that there's more to this DIP than what the rationale describes. I suggest an enumerated list of problem/solution pairs that this DIP addresses.

Description:
It is also possible for the end user to directly control core.attribute.defaultAttributeSet by editing DRuntime directly.

Does this mean we can create an @safe-by-default or @final-by-default runtime? if so, cool!, but that should be spelled out in more detail in the rationale.

@core.attribute.GarbageCollectedness.inferred
That is way too verbose. Is that just an illustration or is that really what we would need to be typing out?

Breaking changes / deprecation process:
It would be nice to get some decision early from the leadership if they would be willing to deprecate the no-leading-@ on attributes that are used with such proliferation in D code, as otherwise there will be a lot of time reviewing and debating this for nothing. Sounds like a risky gamble.

Mike

Reply via email to