| ▲ | uecker a day ago | |||||||
A pointer is a type where a null pointer can't be used as a regular value but leads to a trap when dereferenced. | ||||||||
| ▲ | realharo 3 hours ago | parent [-] | |||||||
By "can't be used as a regular value", I meant that it would be a compile-time error. That you have to explicitly opt into skipping the check, e.g. with `unwrap` in Rust, or with something like `!` in languages where `string` and `string?` are different types (like TypeScript, Kotlin, Swift, C#, etc.) Trying to change a function return type from e.g. `string` to `string?` would make the backwards-incompatible breaking change immediately visible, and break the builds of all code that relied on not having to check it back when it was `string` - at compile time. | ||||||||
| ||||||||