4 ms·
I will echo what others have said here - Apple have failed on the original goals of Swift. - It is no longer simple, Swift 4 onwards have been piling the compl
by AJRF 3y ago
I will echo what others have said here - Apple have failed on the original goals of Swift.
- It is no longer simple, Swift 4 onwards have been piling the complexity higher than I previously thought possible. I would never recommend it as a language to teach. I would have with Swift 3, but 4 to now - absolutely not - too complex.
- It was never open, but the language features dropped on the community to support SwiftUI cemented the fact that outside contributors are not treated with any respect. Worth reading - this is from the guy who created the language! https://mjtsai.com/blog/2022/02/22/why-latter-left-the-swift-core-team https://mjtsai.com/blog/2022/02/22/why-latter-left-the-swift...
- Swift on the server is dead. Swift on other platforms has dreadfully poor support. It would and should be rejected for anything outside of iOS apps.
Kotlin or Rust are much much better choices that live in the same space that Swift projects would be considered for.
- izackp 3y agoSwift has some of the simplest code for what it’s trying to accomplish. Any complexity is opt-in. Error handling is great and works well with async. Protocols and enums are amazing. It’s keeping up with new patterns and techniques such as implementing move semantics and actors. As well as c and c++ interop, and so on. Support is coming for other OSs. Kotlin constantly clashes with java. It almost feels like typescript + JavaScript. Rust doesn’t allow for shared mutability making common/simple patterns for making apps much more difficult. I like rust but it has its own place.
- happytoexplain 3y agoIt really strikes me as odd how often I see the "Swift got too complex" criticism. IMO, all Swift got was all the best features of programming languages, designed as good as or better than in almost all other languages. It feels like calling Swift too complex is like calling a box of tools too complex. You don't need to understand all of them to use any of them, and the easiest tools in the box are those that are perfect for 90% of jobs. Enormous caveat for SwiftUI, but that's not part of the language, it's a framework. The parts of the language that enable it are perfectly nice.