airstrafer
4 hours ago
A very solid release with very nice immediate conveniences/improvements and foundational long term work.
I’m particularly impressed at the team’s continued investment in non-Apple platforms. IMO, true cross platform Swift codebases still seems out of reach for most shops. But if they keep this up for a few more years then Swift could become a very compelling cross platform language — for both systems and application programming.
The big hurdle they need to figure out is the standard library and especially SwiftUI. SwiftUI is the single most important library that essentially all Apple swift codebases use, so until there is a real cross platform SwiftUI then for app programming IMO Swift will remain a novelty.
There are other frameworks, like eg Network.framework, which really should be in the stdlib as well.
MBCook
4 hours ago
SwiftUI is Apple secret sauce. That’s never going to be released.
All the compiler features are there. Others can make similar libraries or other new libraries.
But I don’t see why Apple would ever release that outside Apple land. Swift can still be used for shared logic and server stuff and command line tools and GUIs using other libraries.
giancarlostoro
3 hours ago
You don't 100% need them to release it, there's projects like Skip:
Which was open sourced sometime back, and builds iOS and Android apps, which is really neat, because it means your Android app's logic etc is all natively compiled, only a shim of Java to run it. I wish Google would let people publish standard compiled binaries for their OS instead of just making everything rely on the ART.
Honestly, I am jealous of the number of RAD IDEs from the 90s and early 00s we need to start investing in good tooling again.
woadwarrior01
4 hours ago
Incidentally, there's a nascent OSS project called OpenSwiftUI.
MattDamonSpace
4 hours ago
Not to mention it’s built on top of Apple’s other private UI frameworks
MBCook
3 hours ago
Actually that’s supposed to have switched this year. Reportedly the legacy stuff is now wrapped SwiftUI so they all render the same buttons/text boxes/etc.
No more 2 (or maybe 3 for carbon?) implementations.
Hopefully this will let them add features and fix bugs faster.
hazira
3 hours ago
The opensource cross-platform equivalent, but not drop-in, alternative of Network.framework is https://github.com/apple/swift-network-evolution, which re-implements much of the API surface from scratch, including QUIC.
pohl
4 hours ago
“Novelty” is a stretch. There’s a lot of headless code in the world.