3 ms·
And this is why nullable data types are important!
by philipov 10y ago
And this is why nullable data types are important!
- Filligree 10y agoNullable types are fine. The key is to make them explicitly nullable, so that programmers are allowed to use non-nullable types as well. Both need to be permitted. Ideally by way of sum types, but Kotlin's approach should be okay.
- sanderjd 10y agoWhy do you need both? Are there use cases for null that are not covered by a (non-nullable) type with present and absent variants?
- clappski 10y agoI think the distinction between nullable types and the non-nullable types you speak of is fairly narrow, you've just made it type safe (which isn't a bad thing!).
- sanderjd 10y agoI don't necessarily disagree, what I don't understand is the parent comment's use of the word "need" in "Both need to be permitted". It makes me think there is something nullable types can do that non-nullable types can't do, and I'm just not sure what that is. Something like "it is fine to permit both" would make sense to me. I guess maybe it's because in a language with no value types (like anything on the jvm), using Optionals everywhere requires a lot more objects to be allocated, so in allocation-sensitive code it might make more sense to use nulls instead.