On Saturday, 14 July 2018 at 10:53:17 UTC, Andrei Alexandrescu
wrote:
I think it's better to choose a more general attribute name
with reduced initial applicability. Then application of said
attribute can be extended to other functions with ease. In
contrast, an obscure attribute name is sure to be followed by
more obscure attribute names. And don't get me started about
inventing new syntax.
Regarding the hand-wringing over generality: we have an
exceedingly poor record of paralysis of analysis, whereby we'd
worry that every design decision potentially locks us out from
all other as-of-yet-unchosen design decisions. If history is
any indication, this sudden worry about vaguely-promising green
pastures of the future is a sign of malady. We want copy
construction. Conflating this with a very general schemata for
implicit conversion would not be a wise decision in my opinion.
I now deeply regret ever telling Razvan to mention future
possible directions. This DIP must do implicit copy
constructors and do it well, nothing less and nothing more.)
I also think a more general attribute is better. I think there's
a middle ground between total analysis paralysis and no
discussion of concept generality. I had hoped some thought would
be given to the implications of implicit but overall I'm still
happy, and I trust your judgement. BTW, I would still have
brought it up even if the DIP didn't mention future directions :-)