The attribute spam is almost longer than the function itself.
I often wished for something like
----
module foo.bar;
default(@safe, pure);
function foo() { } // is annotated with @safe & pure
@deny(pure) // or pure(false) as I suggested a long time ago
function bar() { } // is annotated only with @safe
----
That would IMO lighten the burden.
