What’s new in Swift 6.2
Concurrency and Main Actor
- Several commenters advocate defaulting most code to the main actor / single thread to reduce debugging complexity, especially for UI-heavy apps.
- Others argue Apple is “solving a problem that doesn’t exist,” saying they rarely hit concurrency bugs in pre-Swift-6 code.
- Swift’s actor model and new concurrency features are seen by some as over-academic and ill-suited to existing ecosystems; others say Swift 6.2’s changes make actor isolation more practical and reduce migration pain.
Swift Outside the Apple Ecosystem
- Strong disagreement over whether Swift is “Apple-only.”
- Examples cited: server frameworks (e.g., Vapor), Linux/C++ replacement use, embedded Linux products.
- Critics say ecosystem, docs, and evolution are still Apple-centric, and server frameworks are destabilized by concurrency changes.
- Advantages mentioned: performance close to C++/Rust, much easier than Rust, familiar to large iOS dev pool, decent server ergonomics if you’re already in Swift.
Memory Management: ARC vs “GC”
- Debate over whether Swift’s ARC makes it a “garbage collected” language:
- One side: runtime reference counting is a form of GC and can hurt throughput.
- Other side: ARC is deterministic and opt‑in via classes, closer to
shared_ptrthan a tracing GC.
- Consensus: Swift is not suitable where no runtime memory management is desired.
Free-Form Identifiers and HTTP Status Example
- Swift 6.2’s raw identifiers (e.g., backticked names with spaces or numeric-like cases) polarize people:
- Supporters: great for test names, DSLs, FFI, avoiding keyword clashes.
- Critics: bad language-level solution for readability; HTTPStatus.
404seen as a poor, bug-prone example compared to semantic names.
Complexity, Governance, and Comparisons
- Many worry Swift is “collapsing under complexity,” with too many special cases, features, and concurrency corner cases; comparisons made to C++ and Rust.
- Others counter that some features (global-actor conformances, method key paths) actually reduce friction and improve consistency, and can mostly be ignored by typical apps.
- Governance is criticized as too permissive (“shoveling stuff in”), though some defend the open evolution process.
SwiftUI, Tooling, and Xcode
- Opinions on SwiftUI range from “wreck, still need UIKit for advanced UI” to “mature and great for animation-heavy apps, with UIKit bridges where needed.”
- Complaints about slow, fragile compiles and Xcode dependence; some hope for
swift-buildto eventually free app builds from Xcode. - Non-Xcode workflows today require a lot of manual app-bundling and signing steps.