Copy Constructor DIP

Manu turkeyman at gmail.com
Fri Jul 13 03:45:46 UTC 2018


On Thu, 12 Jul 2018 at 20:15, Meta via Digitalmars-d
<digitalmars-d at puremagic.com> wrote:
>
> On Friday, 13 July 2018 at 02:32:59 UTC, Manu wrote:
> > Seriously, if I was making this proposal to you, and you were
> > in my
> > position... there is no way in hell that you'd allow any of us
> > to slip
> > something so substantial by like that with the wave of a hand.
> > This DIP depends on @implicit. How can you argue otherwise?
>
> Nothing is being slipped by as far as I'm concerned. @implicit is
> solely introduced in the DIP as a marker for the copy
> constructor, and it doesn't seem like it's intended for anything
> further than avoiding breaking code. It feels to me like you're
> making a mountain out of an ant hill.

That's the whole point though.
We're debating whether "@implicit" is a good idea. And it's the only
detail of the DIP that feels noteworthy or contentious to me. The rest
is pretty much common-sense, and long overdue.

I can see myself getting behind 2 possibilities, no @implicit, or
@implicit done right.
I don't see myself getting behind introduction of @implicit on such
terms that it's nothing but "a marker for the copy constructor". So
this 'mountain' is critical to understanding whether I can support
this DIP as proposed or not.

> Still, regardless of what the intention was, @implicit was a poor
> choice of words for exactly this reason.

I disagree; it's the perfect choice assuming an "@implicit done right"
future. And if that's the case, I'll get behind that with all my
insignificant weight, but we need to know how it's defined up front.
If we're not assuming that, then the conversation goes completely
differently, and I would want to resist any such attribute or marker
for the time being until we can explore that other future.
We can't make a decision about it unless we know where it's destined.

Also, this 'ant hill' is _copy construction_, there are few mechanics
we could be talking about so fundamentally important and significant
to the future of the language. Copy construction is HUGE!
This is our one chance to correct some major mistakes from the past,
and I'm glad it's being worked on.


More information about the Digitalmars-d mailing list