visibility vs. accessibility of protected symbols

Jonathan M Davis jmdavisProg at
Mon Feb 13 10:07:20 PST 2012

On Sunday, February 12, 2012 19:32:28 David Nadlinger wrote:
> On 2/12/12 7:28 PM, Martin Nowak wrote:
> > The shallow distinction of visibility vs. accessibility breaks the
> > module system because
> > one can't safely add a private symbol without possibly affecting every
> > dependent module.
> > Thus we're back at using underscore names to protect from that.
> Yes, and this is exactly why I argued to disregard invisible symbols
> during overload resolution in the past. Walter seems to be firmly
> convinced that the current solution is the right thing to do, but I
> can't recall what his reasons were.

I'm not 100% sure that it's a good idea, depending on what the exact side 
effects are, but in principle, I'd love it if private symbols were invisible to 
other modules.

Now, this does _not_ fly with private being overridable, as TDPL claims it 
should be. But I've already argued that that was a mistake due to the 
performance issues that it causes. I'm not sure what Walter's current plans 
with that are though.

- Jonathan M Davis

More information about the Digitalmars-d mailing list