Re:Experience Report: 6 months of Go
by throwaway894345 on Monday May 02, 2022 @02:12PM
(#31238697)
I'm not sure I'm following. Rust allows:
println!("{}", if x == None { "foo" } else { "bar" });
How would unions make this more ergonomic? For example, in Python (with type annotations), you would have to do: print("foo" if x == None else "bar")
For this use case (can be a some type OR nil) they are more ergonomic because it is an actual OR, not a separate container. You want the thing as-is and handle the case where it isn't there not go through an intermediary type.