Re:Typed nils in Go 2
by zupa-hu on Friday August 11, 2017 @02:30AM
(#14987111)
You use the default empty value, and have an extra field for missingness. Than you have real type safety.
[ Parent
| on HN ]
Real type safety is sum types. If I need to express something that is present or missing, I should use a Maybe monad.
Having an extra field for "missingness" is less safe because the type system won't enforce that it is either missing or set, you could have it set to a value but marked as missing which is still ambiguous.