Sure, to be sure the type system needs to support non-nullable references. However, even without those, proper use of Optionals means getting a null result becomes an assertable bug <i>in all cases</i>, not a potentially valid code path signalling &quot;not available&quot; that should be checked.