<div dir="auto"><div><div class="gmail_quote"><div dir="ltr">On Mon., 16 Jul. 2018, 6:00 pm docandrew via Digitalmars-d, <<a href="mailto:digitalmars-d@puremagic.com">digitalmars-d@puremagic.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Saturday, 14 July 2018 at 10:53:17 UTC, Andrei Alexandrescu <br>
wrote:<br>
> On 7/14/18 5:03 AM, Luís Marques wrote:<br>
>> If there is "no other meaning of @implicit" (other than the <br>
>> intersection of those two properties) why don't you just call <br>
>> it something like @copyctor?<br>
><br>
> I'm totally cool with giving the attribute a more obscure name <br>
> such as @copyctor or anything people want really.<br>
><br>
> (What follows is a personal opinion.<br>
><br>
> I think it's better to choose a more general attribute name <br>
> with reduced initial applicability. Then application of said <br>
> attribute can be extended to other functions with ease. In <br>
> contrast, an obscure attribute name is sure to be followed by <br>
> more obscure attribute names. And don't get me started about <br>
> inventing new syntax.<br>
><br>
> Regarding the hand-wringing over generality: we have an <br>
> exceedingly poor record of paralysis of analysis, whereby we'd <br>
> worry that every design decision potentially locks us out from <br>
> all other as-of-yet-unchosen design decisions. If history is <br>
> any indication, this sudden worry about vaguely-promising green <br>
> pastures of the future is a sign of malady. We want copy <br>
> construction. Conflating this with a very general schemata for <br>
> implicit conversion would not be a wise decision in my opinion. <br>
> I now deeply regret ever telling Razvan to mention future <br>
> possible directions. This DIP must do implicit copy <br>
> constructors and do it well, nothing less and nothing more.)<br>
><br>
><br>
> Andrei<br>
<br>
I think in this case, a more obscure name like @copyctor is more <br>
descriptive. I fear that at some point, a more general attribute <br>
like "@implicit" will turn into the next "static". To me, <br>
@implicit smells like one of those keywords that will grow to <br>
carry many different meanings in different contexts and just end <br>
up overly-broad.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">But that's the point, and the key advantage of the name ;)</div></div>