[swift-evolution] [Review] SE-0025 Scoped Access Level

Joseph Lord joseph at human-friendly.com
Sat Feb 27 17:28:13 CST 2016

> On Feb 27, 2016, at 9:37 PM, Ilya Belenkiy via swift-evolution <swift-evolution at swift.org> wrote:
> If the primary goal is to keep the language small, this would be a good argument for removing "private". But if the goal is clarity and correctness, then "scoped" will help with both.
> There are many constructs in the language already that are not strictly necessary and can be expressed via other means. For example, anything that you can do with "guard", you can do with "if". But they are there because they help clarity and correctness. "scoped" is like that.

I've drifted to mild support for this proposal but I want to pick up the point of language size.

 While not the "primary goal" a small language is still an important goal. The bigger the language the more there is for beginners to learn and the more things that you need to understand while reading code. There is also the chance if the language gets too big that people start using different subsets.  C++ is to me the canonical example of the language that is too big and complicated for its own good.

This doesn't mean that nothing should be added to Swift just that everything needs to pull its weight, whether by making things possible that aren't otherwise or by sufficiently improving clarity and correctness or some other real improvement especially in common use cases. I appreciate that the bar for inclusion is kept high and that some things are even being removed through the evolution process.


More information about the swift-evolution mailing list