# Discussion

**URL:** https://forums.swift.org/c/evolution/discuss/11.md

[Latest](https://forums.swift.org/latest.md) · [Categories](https://forums.swift.org/categories.md) · [Tags](https://forums.swift.org/tags.md)

---

## [About the Discussion category](https://forums.swift.org/t/about-the-discussion-category/17)

<div class="topic-metadata">

**Author:** [@system](https://forums.swift.org/u/system)\
**Replies:** 0\
**Last updated:** [January 18, 2018, 7:44am UTC](https://forums.swift.org/t/about-the-discussion-category/17 "2018-01-18T07:44:46Z")

</div>

The Evolution Discussion category is for general discussion of the evolution of the Swift language. This category will accept email sent to: swift+evolution-discuss@forums.swift.org

---

## [Should noncopyable types release system resources in \`deinit\`?](https://forums.swift.org/t/should-noncopyable-types-release-system-resources-in-deinit/90120)

<div class="topic-metadata">

**Author:** [@jrflat](https://forums.swift.org/u/jrflat)\
**Replies:** 23\
**Last updated:** [October 19, 2026, 7:41pm UTC](https://forums.swift.org/t/should-noncopyable-types-release-system-resources-in-deinit/90120 "2026-10-19T19:41:55Z")

</div>

Hi all, In the swift-system pitch for a noncopyable Win32.FileHandle, we keep coming back to one question: should a noncopyable type release a system resource, like a file handle, in its deinit? This has come up repeate…

---

## [Binding a task-local without a closure](https://forums.swift.org/t/binding-a-task-local-without-a-closure/90153)

<div class="topic-metadata">

**Author:** [@zienag](https://forums.swift.org/u/zienag)\
**Replies:** 0\
**Last updated:** [October 19, 2026, 6:58pm UTC](https://forums.swift.org/t/binding-a-task-local-without-a-closure/90153 "2026-10-19T18:58:49Z")

</div>

Hi Swift users! I want to talk about making task-locals more flexible while keeping them safe. The latest compiler changes forbid the unsafe way of binding them outside of withValue, but there is still no safe API that …

---

## [Minor source break with \`if let\` and \`guard let\` bindings](https://forums.swift.org/t/minor-source-break-with-if-let-and-guard-let-bindings/89955)

<div class="topic-metadata">

**Author:** [@Slava\_Pestov](https://forums.swift.org/u/Slava_Pestov)\
**Replies:** 4\
**Last updated:** [October 15, 2026, 2:24pm UTC](https://forums.swift.org/t/minor-source-break-with-if-let-and-guard-let-bindings/89955 "2026-10-15T14:24:56Z")

</div>

Just a heads up about something you might notice in upcoming developer snapshots. In Swift, if let and guard let bindings are intended to be used only with optional values. On the other hand, Swift also supports an impl…

---

## ["New Codable" prototype available for feedback](https://forums.swift.org/t/new-codable-prototype-available-for-feedback/85186)

<div class="topic-metadata">

**Author:** [@kperryua](https://forums.swift.org/u/kperryua)\
**Replies:** 84\
**Last updated:** [October 13, 2026, 4:48am UTC](https://forums.swift.org/t/new-codable-prototype-available-for-feedback/85186 "2026-10-13T04:48:39Z")

</div>

(Apologies for the re-post. We thought it best to create a new topic for increased visibility since some might not be following the original thread.) Hello again Swift Community! Here we are, almost a full year after m…

---

## [A possible type-based model for scope restrictions on ~Escapable types](https://forums.swift.org/t/a-possible-type-based-model-for-scope-restrictions-on-escapable-types/88856)

<div class="topic-metadata">

**Author:** [@John\_McCall](https://forums.swift.org/u/John_McCall)\
**Replies:** 13\
**Last updated:** [October 9, 2026, 3:10pm UTC](https://forums.swift.org/t/a-possible-type-based-model-for-scope-restrictions-on-escapable-types/88856 "2026-10-09T15:10:08Z")

</div>

Hello, folks. For the last few months, I've been thinking about where we're going with ~Escapable types and lifetime dependencies. My conclusion is that we need a somewhat radical shift in the basic language model of th…

---

## [Indirect Members](https://forums.swift.org/t/indirect-members/81129)

<div class="topic-metadata">

**Author:** [@Anachron](https://forums.swift.org/u/Anachron)\
**Replies:** 8\
**Last updated:** [October 6, 2026, 3:17pm UTC](https://forums.swift.org/t/indirect-members/81129 "2026-10-06T15:17:11Z")

</div>

Hello community, With enums, you can have indirect cases: enum Tree\<T\> { case Leaf(T) indirect case Node(Tree, Tree) } But with structs, last time I checked, you can not do struct LinkedList\<T\> { var value :…

---

## [Future of ~Escapable for Slices](https://forums.swift.org/t/future-of-escapable-for-slices/89800)

<div class="topic-metadata">

**Author:** [@Dmitriy\_Ignatyev](https://forums.swift.org/u/Dmitriy_Ignatyev)\
**Replies:** 3\
**Last updated:** [October 2, 2026, 4:46pm UTC](https://forums.swift.org/t/future-of-escapable-for-slices/89800 "2026-10-02T16:46:18Z")

</div>

Hi everyone With the recent advancements in Swift’s ownership model, specifically the introduction of ~Escapable types, we now have a robust system for compile-time lifetime control. This got me thinking about the seman…

---

## [Handling C++ exceptions](https://forums.swift.org/t/handling-c-exceptions/34823)

<div class="topic-metadata">

**Author:** [@mboehme](https://forums.swift.org/u/mboehme)\
**Replies:** 51\
**Last updated:** [September 23, 2026, 10:33pm UTC](https://forums.swift.org/t/handling-c-exceptions/34823 "2026-09-23T22:33:53Z")

</div>

This discussion on my tentative patch for calling C++ constructors has led me to think some more about how C++ exceptions should be handled in the interop. I'd like some feedback on this. In the discussion linked above,…

---

## [Proposing AND, OR as alternative syntax for the &&, || logical operators?](https://forums.swift.org/t/proposing-and-or-as-alternative-syntax-for-the-logical-operators/89660)

<div class="topic-metadata">

**Author:** [@gregh](https://forums.swift.org/u/gregh)\
**Replies:** 2\
**Last updated:** [September 20, 2026, 8:32pm UTC](https://forums.swift.org/t/proposing-and-or-as-alternative-syntax-for-the-logical-operators/89660 "2026-09-20T20:32:39Z")

</div>

I performed a cursory search of past Swift proposals, and I did not find any that proposed that Swift recognize and and or as alternative tokens for the current logical && and || operators. So, I am posting here to try a…

---

## [Is macOS 27 exposing Swift Concurrency problems that Swift Evolution should address?](https://forums.swift.org/t/is-macos-27-exposing-swift-concurrency-problems-that-swift-evolution-should-address/89507)

<div class="topic-metadata">

**Author:** [@Amir\_Michail](https://forums.swift.org/u/Amir_Michail)\
**Replies:** 3\
**Last updated:** [September 13, 2026, 10:51pm UTC](https://forums.swift.org/t/is-macos-27-exposing-swift-concurrency-problems-that-swift-evolution-should-address/89507 "2026-09-13T22:51:39Z")

</div>

macOS 27 has had, and still has, quite a few strange UI glitches and moments of sluggishness, even on fast Apple Silicon Macs. Given how much UI behavior changed and broke during the beta cycle, I suspect Apple may have…

---

## [Why can't I have a private @usableFromInline declaration?](https://forums.swift.org/t/why-cant-i-have-a-private-usablefrominline-declaration/25691)

<div class="topic-metadata">

**Author:** [@Lily\_Ballard](https://forums.swift.org/u/Lily_Ballard)\
**Replies:** 13\
**Last updated:** [September 11, 2026, 6:56am UTC](https://forums.swift.org/t/why-cant-i-have-a-private-usablefrominline-declaration/25691 "2026-09-11T06:56:25Z")

</div>

The @usableFromInline annotation can only be attached to internal declarations. Why can't I attach it to private ones too? Whether it's usable from inline should be completely orthogonal to access control (except in that…

---

## [How to test package traits?](https://forums.swift.org/t/how-to-test-package-traits/78039)

<div class="topic-metadata">

**Author:** [@CharlesS](https://forums.swift.org/u/CharlesS)\
**Replies:** 12\
**Last updated:** [September 4, 2026, 12:30am UTC](https://forums.swift.org/t/how-to-test-package-traits/78039 "2026-09-04T00:30:34Z")

</div>

Playing around with the new package traits feature, and it's almost great, but I'm running into one problem: I can't find a way to unit test non-default traits. Ideally, I'd like to do something like: // swift-tools-ver…

---

## [How might linear types work in swift?](https://forums.swift.org/t/how-might-linear-types-work-in-swift/89215)

<div class="topic-metadata">

**Author:** [@aviva](https://forums.swift.org/u/aviva)\
**Replies:** 5\
**Last updated:** [September 3, 2026, 11:31pm UTC](https://forums.swift.org/t/how-might-linear-types-work-in-swift/89215 "2026-09-03T23:31:04Z")

</div>

Thought I'd break this off from \[Pitch\] Introduce a way to annotate functions that are called at most once since I think it is interesting to consider and wanted to respond to @jrose but it's not super pertinent to that …

---

## [Internal imports by default is very problematic for generated code](https://forums.swift.org/t/internal-imports-by-default-is-very-problematic-for-generated-code/82722)

<div class="topic-metadata">

**Author:** [@taylorswift](https://forums.swift.org/u/taylorswift)\
**Replies:** 20\
**Last updated:** [August 28, 2026, 9:07pm UTC](https://forums.swift.org/t/internal-imports-by-default-is-very-problematic-for-generated-code/82722 "2026-08-28T21:07:59Z")

</div>

after working on an internal code generation framework for the past few months, i’ve experienced a lot of friction with the new SE-0409 Access Level on Imports feature, and the upcoming Swift 7 “Internal Imports by Defau…

---

## [Capturing functions vs casting functions](https://forums.swift.org/t/capturing-functions-vs-casting-functions/89083)

<div class="topic-metadata">

**Author:** [@Nickolas\_Pohilets](https://forums.swift.org/u/Nickolas_Pohilets)\
**Replies:** 5\
**Last updated:** [August 27, 2026, 7:55pm UTC](https://forums.swift.org/t/capturing-functions-vs-casting-functions/89083 "2026-08-27T19:55:36Z")

</div>

Thanks to SE-0434, it is possible to capture non-sendable function in an actor-isolated (and thus sendable) closure if it is isolated to the current context. If closure does nothing but calling the captured function, th…

---

## [Supporting @available stored properties](https://forums.swift.org/t/supporting-available-stored-properties/89024)

<div class="topic-metadata">

**Author:** [@mattie](https://forums.swift.org/u/mattie)\
**Replies:** 3\
**Last updated:** [August 17, 2026, 8:39pm UTC](https://forums.swift.org/t/supporting-available-stored-properties/89024 "2026-08-17T20:39:19Z")

</div>

I ran into an issue with someone today. I think this code represents the issue pretty closely. @available(anyAppleOS 27.0, \*) struct SomeBrandNewType { } struct AdoptingType { // error: Stored properties cannot be ma…

---

## [Recursive protocol conformance requirement](https://forums.swift.org/t/recursive-protocol-conformance-requirement/88978)

<div class="topic-metadata">

**Author:** [@tera](https://forums.swift.org/u/tera)\
**Replies:** 8\
**Last updated:** [August 16, 2026, 10:05am UTC](https://forums.swift.org/t/recursive-protocol-conformance-requirement/88978 "2026-08-16T10:05:14Z")

</div>

I have a use case where having a feature similar to Equatable, Hashable, Codable (perhaps a few others?) would help: transitive protocol conformance requirement. protocol P /\* : TransitiveConformanceRequired \*/ {} ex…

---

## [The State of Swift & Rust interoperability?](https://forums.swift.org/t/the-state-of-swift-rust-interoperability/72205)

<div class="topic-metadata">

**Author:** [@AliMark71](https://forums.swift.org/u/AliMark71)\
**Replies:** 12\
**Last updated:** [August 8, 2026, 5:14pm UTC](https://forums.swift.org/t/the-state-of-swift-rust-interoperability/72205 "2026-08-08T17:14:26Z")

</div>

I want to ask about the current state of Swift and Rust interoperability, how hard is it currently to mix the two languages, and if it isn't great for now, is there any plans to make it better? I think that rust is prov…

---

## [Contemplating Default Isolation Control](https://forums.swift.org/t/contemplating-default-isolation-control/88205)

<div class="topic-metadata">

**Author:** [@mattie](https://forums.swift.org/u/mattie)\
**Replies:** 25\
**Last updated:** [August 6, 2026, 11:10am UTC](https://forums.swift.org/t/contemplating-default-isolation-control/88205 "2026-08-06T11:10:33Z")

</div>

I've just recently re-watched a wonderful talk about progressive disclosure in Swift. The whole thing is worth your time, but there's one part in particular (about 30m-35m) that I have been thinking about a lot. That 5 m…

---

## [Default init internal needs a workaround. Enough is enough](https://forums.swift.org/t/default-init-internal-needs-a-workaround-enough-is-enough/40931)

<div class="topic-metadata">

**Author:** [@mlfarrell](https://forums.swift.org/u/mlfarrell)\
**Replies:** 51\
**Last updated:** [August 3, 2026, 10:14am UTC](https://forums.swift.org/t/default-init-internal-needs-a-workaround-enough-is-enough/40931 "2026-08-03T10:14:45Z")

</div>

I'd make a long winded statement, but me having to write this code to use a swiftui view outside of its own framework should explain itself enough. This is ridiculous, you know it's ridiculous. I know why you guys don'…

---

## [Again on AsyncAlgorithms: Throttling a Shared Sequence](https://forums.swift.org/t/again-on-asyncalgorithms-throttling-a-shared-sequence/88712)

<div class="topic-metadata">

**Author:** [@kelin](https://forums.swift.org/u/kelin)\
**Replies:** 0\
**Last updated:** [August 2, 2026, 6:19pm UTC](https://forums.swift.org/t/again-on-asyncalgorithms-throttling-a-shared-sequence/88712 "2026-08-02T18:19:54Z")

</div>

The .shared() operator of AsyncAlgorithms package is helpful and I want to use it often, if not always. However, it comes with a tradeoff. The AsyncShareSequence is internal to the package which forces us to use any type…

---

## [Overriding a default “implementation” typealias with another typealias](https://forums.swift.org/t/overriding-a-default-implementation-typealias-with-another-typealias/88641)

<div class="topic-metadata">

**Author:** [@taylorswift](https://forums.swift.org/u/taylorswift)\
**Replies:** 0\
**Last updated:** [July 29, 2026, 8:33pm UTC](https://forums.swift.org/t/overriding-a-default-implementation-typealias-with-another-typealias/88641 "2026-07-29T20:33:12Z")

</div>

here is a protocol Indexable, with an associated type requirement Index. it gets a default “implementation” for Index where Self: RawRepresentable, and has a refining protocol IndexableString that provides another defaul…

---

## [COW-hazards between SE-0380 (Lexical Lifetimes) and SE-0429 (Partial Consumption)](https://forums.swift.org/t/cow-hazards-between-se-0380-lexical-lifetimes-and-se-0429-partial-consumption/88538)

<div class="topic-metadata">

**Author:** [@taylorswift](https://forums.swift.org/u/taylorswift)\
**Replies:** 1\
**Last updated:** [July 25, 2026, 11:56pm UTC](https://forums.swift.org/t/cow-hazards-between-se-0380-lexical-lifetimes-and-se-0429-partial-consumption/88538 "2026-07-25T23:56:54Z")

</div>

this is a pattern i get burned by when having LLMs write Swift code: here, S is a noncopyable struct, with a noncopyable field T and a copyable field U. but U is only copyable because it needs to support protocol confor…

---

## [Can we require StringProtocol.UTF8View be a BidirectionalCollection?](https://forums.swift.org/t/can-we-require-stringprotocol-utf8view-be-a-bidirectionalcollection/44951)

<div class="topic-metadata">

**Author:** [@Karl](https://forums.swift.org/u/Karl)\
**Replies:** 1\
**Last updated:** [July 25, 2026, 6:31am UTC](https://forums.swift.org/t/can-we-require-stringprotocol-utf8view-be-a-bidirectionalcollection/44951 "2026-07-25T06:31:53Z")

</div>

StringProtocol.UTF8View only requires Collection conformance, even though StringProtocol itself, as well as the UTF16View and UnicodeScalarView, are BidirectionalCollections. The actual UTF8Views for String and Substring…

---

## [\`warns\` as a non-returning \`throws\`](https://forums.swift.org/t/warns-as-a-non-returning-throws/88533)

<div class="topic-metadata">

**Author:** [@No\_Pen\_3825](https://forums.swift.org/u/No_Pen_3825)\
**Replies:** 0\
**Last updated:** [July 25, 2026, 4:54am UTC](https://forums.swift.org/t/warns-as-a-non-returning-throws/88533 "2026-07-25T04:54:47Z")

</div>

Sometimes, even when I can recover and continue, I'd like to bubble some message back up about what the hiccup was and how I fixed it. One solution for this would be a new warns keyword which works much like throws, exce…

---

## [Living with default isolation controls](https://forums.swift.org/t/living-with-default-isolation-controls/88444)

<div class="topic-metadata">

**Author:** [@ibex](https://forums.swift.org/u/ibex)\
**Replies:** 6\
**Last updated:** [July 23, 2026, 3:16pm UTC](https://forums.swift.org/t/living-with-default-isolation-controls/88444 "2026-07-23T15:16:42Z")

</div>

I have been playing with concurrency for a while now, after the default isolation controls were introduced. I absolutely hate those controls! Now, to understand the code, I have to go and find them first and then cons…

---

## [SE-0414 clarification: examples of isolation regions may be confusing](https://forums.swift.org/t/se-0414-clarification-examples-of-isolation-regions-may-be-confusing/88470)

<div class="topic-metadata">

**Author:** [@noamfree](https://forums.swift.org/u/noamfree)\
**Replies:** 0\
**Last updated:** [July 23, 2026, 4:42am UTC](https://forums.swift.org/t/se-0414-clarification-examples-of-isolation-regions-may-be-confusing/88470 "2026-07-23T04:42:55Z")

</div>

in SE-0414 there are some examples of isolation regions changing through a program In these examples of isolation regions, we quote the rules in 3 as written, but in the rule y is the returned value, while in the examp…

---

## [A native, Zig-style libc for swiftlang](https://forums.swift.org/t/a-native-zig-style-libc-for-swiftlang/88274)

<div class="topic-metadata">

**Author:** [@pbwo](https://forums.swift.org/u/pbwo)\
**Replies:** 7\
**Last updated:** [July 16, 2026, 2:02pm UTC](https://forums.swift.org/t/a-native-zig-style-libc-for-swiftlang/88274 "2026-07-16T14:02:45Z")

</div>

I'd like to propose extending swiftlang with a native libc implementation, built the way Zig's libc subproject is doing it — incrementally replacing vendored C source with native language wrappers. Not to be scoped to E…

---

## [\[Discussion\] Bag of Bytes Types](https://forums.swift.org/t/discussion-bag-of-bytes-types/86983)

<div class="topic-metadata">

**Author:** [@jmschonfeld](https://forums.swift.org/u/jmschonfeld)\
**Replies:** 33\
**Last updated:** [July 3, 2026, 11:21am UTC](https://forums.swift.org/t/discussion-bag-of-bytes-types/86983 "2026-07-03T11:21:49Z")

</div>

Hi everyone, For Swift 6.4, I’ve spent a fair amount of time working on bag of bytes types (including Data in particular). Based on community feedback and some performance investigations, Data has now gained some fairly…

[Next page](https://forums.swift.org/c/evolution/discuss/11.md?page=1)
