Swift 6.3
Swift 6.3 Features & Interop
- First official Swift SDK for Android draws interest but also doubt it will become a primary Android choice or rival Flutter/React Native.
- New
@cattribute for exporting Swift to C is welcomed but some find it odd this arrived after deep C++ interop. - Noncopyable types and ownership modeling seen as an underrated but important step for safer low‑level work.
- Some note Swift had experimental C export and Obj‑C export earlier; 6.3 mostly formalizes and integrates.
Android, Cross‑Platform & Mobile Stacks
- iOS‑first developers like the idea of reusing Swift code on Android; others expect it to remain niche.
- Several argue that frameworks/SDKs matter more than language; Kotlin + Compose and Flutter seen as having stronger cross‑platform stories.
- Kotlin is praised for JVM + native + Swift/Obj‑C interop and a stronger open‑source culture than Swift’s ecosystem.
Server-Side & Non‑Apple Platforms
- Mixed reports: some run Swift successfully on Linux (including C++ interop); others find server Swift immature versus Rust/Go/Java ecosystems.
- Disagreement on Apple’s own use of Swift on servers: some claim they don’t; others link to Apple’s own write‑ups of Swift backends.
- Windows and Linux toolchains exist, but GUI/tooling support is patchy and often “you’re on your own”.
Language Design, Complexity & Ecosystem
- Strong sentiment that Swift has grown from “beautiful and simple” into a feature‑heavy, keyword‑dense language with many special cases.
- Debate over whether “you don’t have to use all features” mitigates complexity; many say teams must understand any feature that appears in code.
- Comparisons made to C++, C#, Go, Rust, and even Lisp/Clojure in terms of how complexity accretes over time.
- Some see Swift as a missed opportunity to challenge Python, especially around 2015–2017, but others argue Python’s data/ML ecosystem made that unrealistic.
Tooling, Compilation Speed & Developer Experience
- Compilation speed widely criticized as “uber slow”, often worse than Rust and far from Go.
- Language servers and SourceKit‑LSP are described as flaky, especially outside Xcode; some disable diagnostics due to spurious errors.
- Build tooling (SwiftPM, swift‑build, Xcode integration) is viewed as in flux and sometimes fragile, with performance concerns.
- Some appreciate built‑in formatting tools, but third‑party linters/formatters are still preferred by many.