Sealed classes - would you want them in D? (v2)
Uknown
sireeshkodali1 at gmail.com
Thu May 17 13:18:39 UTC 2018
On Thursday, 17 May 2018 at 11:18:52 UTC, KingJoffrey wrote:
> On Thursday, 17 May 2018 at 10:34:18 UTC, Zoadian wrote:
>> On Thursday, 17 May 2018 at 02:32:07 UTC, KingJoffrey wrote:
>>> [...]
>> People from c++ might be suprised by 'private' already. We do
>> not have to confuse those c#ies too.
>
> Interesting.
>
> If only D had applied that same criteria to use of the word
> 'private'.
Have you considered the keyword `module`?
--- kings.d
class King
{
private string _name;
module string __name;
public string getName()
{
return __name;
}
public void setName(string name)
{
__name = name;
}
}
void main()
{
scope king = new King();
king._name = "me"; //ok: _name is private
king.__name = "me"; //error: __name is of `module` scope
king.setName("me"); //ok
}
> I do wonder what word could possibly suffice, to please
> everyone.
`module`
/s
>> [...]
> Again, DIP before discussion, and we all know what will happed
> to the DIP.
I won't oppose such an addition since it will be purely opt-in,
but you will have to consider that this would add more specifiers:
`private`, `protected`, `package`, `public` and `export`.
You might also want to read these [0] past discussions on this
feature. I'm not sure how up to date that doc is, but it should
be a good starting point.
[0]:
https://wiki.dlang.org/Access_specifiers_and_visibility#Current_state_of_affairs_in_C.2B.2B
More information about the Digitalmars-d
mailing list