On Friday, 29 May 2020 at 21:38:40 UTC, Adam D. Ruppe wrote:
On Friday, 29 May 2020 at 21:18:13 UTC, Walter Bright wrote:
The idea is the simple, general rule that:
There's already exceptions to that.
public public void foo() {}
is an error, whereas
public:
public void foo() {}
is not.
Having a simple, general rule with maybe a less favorable
effect here and there is preferable to a complex set of
special cases that try to do the optimal thing in each case.
Often many things can be a simple, general rule based on how
you word it.
Let's say "attribute: changes the default attribute set of
non-inferred subsequent declarations. attribute{} changes the
default attribute set of non-inferred child declarations."
That is simple and covers the cases sensibly. Big step up from
where we are today.
This seems like a good idea. Simple and enabling.