<html><head><style>body{font-family:Helvetica,Arial;font-size:13px}</style></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><br></div> <br> <div id="bloop_sign_1490302240714659840" class="bloop_sign"></div> <br><p class="airmail_on">On March 23, 2017 at 12:32:38 PM, Brent Royal-Gordon (<a href="mailto:brent@architechies.com">brent@architechies.com</a>) wrote:</p> <div><blockquote type="cite" class="clean_bq" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;"><span><div><span style="color: rgb(0, 0, 0); font-family: 'helvetica Neue', helvetica; font-size: 14px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); float: none; display: inline !important;">To what extent could your need for safety be satisfied by (a) giving the property a long, unique name like `unsafeUnsynchronizedT`, and (b) writing a very small unit test/shell script/Perl script which makes sure references to that very unique name only appear between the two "MARK:" comments?</span></div></span></blockquote></div><p>A third-party linter to get a scoped feature is our current candidate for reimplementing this feature if it's dropped from Swift.</p><p>However, I think it's worth asking to what extent it makes sense to build a language that gets fixed with linters. For example Swift could have used a linter for typechecking (Python is <a href="http://mypy-lang.org">doing this</a>) but the benefits of compile-time typechecking affect a large number of programs and so we decided to ship with batteries included.</p><p>The scoped visibility is like the type system. It is a compile-time check that is used to catch threading, information disclosure, encapsulation violation, or similar bugs. These are problems that affect a large number of programs, we should ship with batteries included.</p><div></div></body></html>