On Wednesday, 1 February 2017 at 23:49:29 UTC, H. S. Teoh wrote:
On Wed, Feb 01, 2017 at 11:49:25PM +0000, Mike via Digitalmars-d wrote:
On Wednesday, 1 February 2017 at 21:47:58 UTC, Adam D. Ruppe wrote: > (actually in the real world, it won't since nobody will care > enough > to write `pure public return const(T) hi(return scope T t) > nothrow > @nogc @safe @noincompetence @a_million_other_things { return > t; }`)

I found all the attribution of function definitions a little unnerving when I started learning D, but at least one other believed it was idiomatic D.

I think the goal, if it's possible to attain to eventually, is to have the compiler infer most of the attributes, ideally all. This is already done for a good number of attributes for template functions and auto functions. I agree with you that attribute soup is a Bad Thing for a language.

A different spin on the same topic - I've been wondering what the anticipated changes to both the standard library and application code are going to be as a result of dip25 and dip1000. Is the expectation that use of the new annotations will be limited to select portions of code bases, or that they will become the predominant way to write D code?

Another spin - If a company has a team people building a code-base and decides to establish best practices, how might the facilities introduced by dip25 and dip1000 fit into those best practices?

Clearly, there will be a menu of options available to teams, applications, etc. But, I would expect there to be a small number of preferred, commonly adopted approaches. And, it would be preferable, though not necessary, that best practices and idioms used in the standard library were a good starting point for new adoptees and development efforts. Hence my question about both Phobos and application code.

Perhaps it's too early to answer these questions, but if there are expected outcomes it would be useful to understand them.

--Jon

Reply via email to