[ one word ]
[ two words ]
[ four words ]
[ eight words ]
Go: Occasional slice footguns, suspiciously productive language all considered.
Rust: Fearless concurrency is not just a catchy slogan.
Swift: The String API should not be this annoying.
[ sixteen words ]
Go: The slices package made generics worth it for me, but I would have been ok without.
Rust: A genuine step change in what a language can offer for safe, correct, and fast programs.
Swift: Two unforced errors: an overly complex type system, SwiftUI syntax/errors via Result Builders is inscrutable.
[ thirty-two words ]
Go: I'll always be a Python guy at heart but for most small programs I reach for Go. Some minor flaws cause an outsized reaction online. Top two missed features: enums and tuples.
Rust: Ultimately Rust's strictness is anathema to my exploratory development style. I've only found joy writing Rust when rewriting programs with known data structures/algorithms. I love running Rust programs but not Rust.
Swift: I am a fan. I really enjoy app and game development in Swift. I question the evolution of the language, Swift 6 in particular feels like another Python 2 to 3 situation.