@bkim@mastodon.social
@mathew@universeodon.com @alcinnz@floss.social I'm a 99/100 with you, except for the "undesirable" part. How do you program without nulls or a zero value?? You'd have to have a sentinel value or an out-of-band boolean to indicate absence pretty often.
@mathew@universeodon.com
@alcinnz@floss.social @bkim@mastodon.social Itβs important to distinguish between null and the zero value. Unfortunately C-like languages obscure the difference by doing #define NULL 0. Having zero values for most types is OK (pointers are an exception, but pointers cause a lot of other problems). Itβs null that tends to ruin language safety. If an integer X can be zero, thatβs fine, you still have an integer type you can always increment. If an integer can be null, you have a problem.