But the main usage of Optional and similar types in mainstream languages is exactly that - making the potential nullness (is that a word?) of the value explicit in the type.
1) an empty list/array 2) throw an exception if the return value is missing. 3) -1
Optional can be used as a better alternative in all these cases. It's not just null.
But the main usage of Optional and similar types in mainstream languages is exactly that - making the potential nullness (is that a word?) of the value explicit in the type.