I'd like an *opt-in* way to verify and prevent *unintentional strong references* in Swift.
This can be used to verify ownership structures, and ultimately avoid retain cycles. Read a draft proposal here: https://github.com/therealbnut/swift-evolution/blob/therealbnut-explicit-ownership/proposals/NNNN-explicit-ownership-type-attribute.md TL;DR: If you have any questions please read the proposal before asking here. It's an opt-in attribute that defines a whitelist of types something can own. For example: @owns(TypeA, TypeB) struct TypeC { ... } I wrote this a few months ago, but we weren't accepting additive proposals. Now we're explicitly looking for something like this: Memory ownership model: Adding an (opt-in) Cyclone/Rust inspired memory > ownership model to Swift is highly desired by systems programmers and folks > who want predictable and deterministic performance (for example, in real > time audio processing code). More pertinent to the goals of Swift 4, this > feature is important because it fundamentally shapes the ABI. It informs > code generation for “inout", how low-level “addressors” work in the ABI, > impacts the Swift runtime, and will have a significant impact on the type > system and name mangling. > - Chris > <https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160725/025676.html> ---- Here's a link to the version of the proposal <https://github.com/therealbnut/swift-evolution/commit/6ab167825d802c7826804e1957eb515d3009743a> when I sent this email.
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution