On Saturday, 3 November 2018 at 06:57:50 UTC, Neia Neutuladh wrote:
On Sat, 03 Nov 2018 04:50:52 +0000, unprotected-entity wrote:
(q1) Why is it, that people who use D, object *so much* to the idea of allowing (at the choice of the programmer) for a type to have it's own private state *within* a module (so that its private state is respected
by other code also within that module)?

We object because the people complaining can't point at a use case that seems reasonable. If you provided real-world examples, we'd consider them.

We are further disinclined to engage with you as a collaborator because you're insulting us and ignoring a lot of our responses to you.

This reasoning is meaningless: one must not prove the obvious.
During the writing of a complex module, it happened to me many times to desire what unprotected-entity asks.

And if the validity of a person's reasoning is a function of his way of expressing them, well ... do not pose to software engineers at least



Or you ask it another way:

(q2)Why must a type within a module *always* have its private state exposed to other code within the module? (the key word here, being
'always').

Because that is both simple and flexible. Swift forsakes simplicity in favor of high granularity, and it's exhausting just reading its protection modifier list.

(q3) Should a language intentionally set out to prevent a programmer
from making that choice?

You're mischaracterizing the situation to make your preferred feature look like the default. That's the opposite of how language design works. Nothing is there by default. You add things as necessary to get a language that's good enough.

What he asks is reasonable and useful, and help in a myriad of cases. I can not even see a disadvantage in the introduction of a true private attribute.

What you ask is reasonable and useful, and help in a myriad of cases. I can not even see a disadvantage in the introduction of a true private attribute.

But already, it seems that nobody still really understands how to use the DIP1000 in the practicality of its code, "const-immutable" is a failure, five hundred pages of reasoning about "shared", entire sections of language abandoned halfway .... a poor man is asked to bring evidence that the water is wet .... geezzzz


Reply via email to