[swift-evolution] [Review] SE-0159: Fix Private Access Levels

Vinnie Hesener vhesener at gmail.com
Fri Mar 24 05:27:15 CDT 2017

This discussion escalated real quickly. There are some very bright minds in
the mud right now, but I think there may still be a way to salvage this

Chris talked about there being two layers to Swift... the easy mode for
adoption and outreach, then the advanced mode for taking over the world.
This requires a delicate balance of features vs usability (e.g. MS Paint vs
Photoshop). There are various ways to approach that balance, but they
almost always require creativity and cooperation from the smartest guys in
the room.

I'm not one of those guys, but let me throw out some food for thought. Is
there a way to not only please both generalized arguments, but also solve
the root of the problem? For instance, has anyone thought about why we even
call things public, private, etc? Other than their initial meaning, the
answer may be "other languages do it" or even better "that is what prevents
confusion and dupe questions on stackoverflow". Fair enough.

I realize this would be jolting for most, but would anyone be asking the
stackoverflow ether what a **scope** var was? How about a **file** func?
How about a SO title: "What does **module** let myVar refer to?"

Don't we have the opportunity to offer, within reason, a large set of
accessors that are self explanatory? I think it may solve the complexity
for usefulness exchange because they are simply there for the advanced
users that want to use them. There's no choosing for newbs because the
choice is in the name, assuming we name them pristinely (I have faith!).

I'm also a little cooky too, but maybe this can spark some creativity in a
more wholistic solution for both sides.

> Hello Swift community,
> The review of SE-0159 "Fix Private Access Levels" begins now and runs
through March 27, 2017. The proposal is available here:
> Reviews are an important part of the Swift evolution process. All reviews
should be sent to the swift-evolution mailing list at
> https://lists.swift.org/mailman/listinfo/swift-evolution<
> or, if you would like to keep your feedback private, directly to the
review manager. When replying, please try to keep the proposal link at the
top of the message:
> Proposal link:
> Reply text
> Other replies
> <
goes into a review?
> The goal of the review process is to improve the proposal under review
through constructive criticism and, eventually, determine the direction of
Swift. When writing your review, here are some questions you might want to
answer in your review:
> What is your evaluation of the proposal?
> Is the problem being addressed significant enough to warrant a change to
> Does this proposal fit well with the feel and direction of Swift?
> If you have used other languages or libraries with a similar feature, how
do you feel that this proposal compares to those?
> How much effort did you put into your review? A glance, a quick reading,
or an in-depth study?
> More information about the Swift evolution process is available at
> https://github.com/apple/swift-evolution/blob/master/process.md<
> Thank you,
> -Doug
> Review Manager
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20170324/6bd64a7e/attachment.html>

More information about the swift-evolution mailing list