On Tuesday, 13 March 2018 at 06:03:11 UTC, Mike Parker wrote:

The same applies here. Encapsulation simply isn't broken by this feature.

What you're saying, is in D, class encapsulation is really 'module' encapsulation.

I get it. Fine. It's an intersting design decision.

But, in doing that, D has shifted the boundary of class encapsulation, to a boundary that is outside the class.

To me, that sounds like D has broken class encapsulation. I don't know how else one could describe it.

I continue to think, that class encapsulation is sacred, a well defined, well understood, concept that has been around for a very long time.

private could have still meant private, and surely someone could have come up with a different access modifier to mean 'private at module level'.

Was that too hard the language designers?

Was it not hard, but just to complex to implement?

I don't get it.

Reply via email to