[swift-evolution] SE-0025: Scoped Access Level, next steps

Tino Heth 2th at gmx.de
Thu Mar 31 03:42:21 CDT 2016


> 4) fileprivate is the unusual and not-really-precedented-in-other-languages modifier, and it would still be “googable”.
I've seen this argument numerous times, and fear that "googleability" receives more attention than it deserves:
It's ok to take it into account when choosing between alternatives that are on par with each other, but we have great documentation to look for the meaning of special words.
It would be a pity if a more expressive term is discarded just because another one is more unique (that does not only apply to this thread — the argument has come up before)

> 6) Support for named submodules could be “dropped in” by parameterizing “internal”.
I still don't like the idea of parameterizing some levels while keeping others in a single form — but parameterizing everything would look better to me:

visible(public)
visible(module)
visible(file)
visible(scope)
visible(file, ModuleA, File.swift)

I think one benefit of this scheme is that there is no ambiguity with "privat" and its meaning in other languages.

Tino


More information about the swift-evolution mailing list