Based on the discussion here, I'm withdrawing this proposal. I created it because of a section in the Error Handling Rationale and Proposal document ( https://github.com/apple/swift/blob/master/docs/ErrorHandlingRationale.rst) about `using`:
Swift should consider providing a using statement which acquires a resource, holds it for a fixed period of time, optionally binds it to a name, and then releases it whenever the controlled statement exits. using has many similarities to defer. It does not subsume defer, which is useful for many ad-hoc and tokenless clean-ups. But it is convenient for the common pattern of a type-directed clean-up. We do not expect this feature to be necessary in the first release. However, it looks like there isn't enough need to warrant a language change, at least for now. Is the Rationale doc a living document? If so, it should perhaps be updated to mention that `using` needs a strong use case given the current language features. Thanks to everyone involved in this discussion. <https://github.com/apple/swift/blob/master/docs/ErrorHandlingRationale.rst#c-and-objective-c-interoperation> On Wed, Dec 30, 2015 at 6:12 AM, Tino Heth <[email protected]> wrote: > It is an appealing idea on first sight, but it makes the language more > complex, and I don't think scoped resources are versatile enough to back > justify their inclusion. > > The defer feature which is already mentioned in the proposal is very > similar — and I expect that will not only be the case for the effect, but > also for the usefulness: > I rarely use defer… I still like the concept, but I guess our ecosystem > just has little need for it. > > Tino -- Trent Nadeau
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
