I would kill for these languages features in Go
That's what C# offers (except true * Rust-style enums). The latter will be there in one of the future versions and is in an active design phase, which luckily focuses on tagged-union implementation strategy. With that said, you can already easily use one of the Option/Result libraries or write your own structure - switching on either is trivial (though you have to sometimes choose between zero-cost-ness and convenien…
[0] https://github.com/shuebner/ClosedTypeHierarchyDiagnosticSup...