Except Erlang doesn't have a none. Nor an undefined for that matter. So `some {T} | undefined` means exactly that, there is no underlying null pointer which could sneak up on you.
`undefined` here is not built-in type or value of the language, it's a standard atom like any other.
So are null, nil, value or false (although false does have a special status in that it's the customary output of boolean operations alongside true).