[swift-evolution] final + lazy + fileprivate modifiers

Slava Pestov spestov at apple.com
Tue Feb 14 03:07:21 CST 2017


> On Feb 12, 2017, at 8:19 AM, David Hart via swift-evolution <swift-evolution at swift.org> wrote:
> 
> Lazy
> 
> This one is clearer: if Joe Groff's property behaviors proposal from last year is brought forward again, lazy can be demoted from a language keyword to a Standard Library property behavior. If Joe or anybody from the core team sees this: do we have any luck of having this awesome feature we discussed/designed/implemented in the Swift 4 timeframe?

Changing a property from ‘lazy’ to computed or a property behavior etc is going to be an ABI-compatible change, so deprecating this feature or replacing it with a standard library feature (with the appropriate syntax sugar to keep old code compiling) is certainly feasible after the ABI freeze.

Slava

> 
> Fileprivate 
> 
> I started the discussion early during the Swift 4 timeframe that I regret the change in Swift 3 which introduced a scoped private keyword. For me, it's not worth the increase in complexity in access modifiers. I was very happy with the file-scope of Swift pre-3. When discussing that, Chris Latner mentioned we'd have to wait for Phase 2 to re-discuss it and also show proof that people mostly used 'fileprivate' and not the new 'private' modifier as proof if we want the proposal to have any weight. Does anybody have a good idea for compiling stats from GitHub on this subject? First of all, I've always found the GitHub Search quite bad and don't know how much it can be trusted. Secondly, because 'private' in Swift 2 and 3 have different meanings, a simple textual search might get us wrong results if we don't find a way to filter on Swift 3 code.
> 
> Thanks for hearing me out!
> 
> David.
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20170214/63c83283/attachment.html>


More information about the swift-evolution mailing list