Comment by eru
1 day ago
I'm not sure how well the 'forcing' works for Rust and C++. You can definitely do this kind of thing in dependently typed languages.
1 day ago
I'm not sure how well the 'forcing' works for Rust and C++. You can definitely do this kind of thing in dependently typed languages.
The type is akin to optional<int>. You can't add 5 to it, you have to dereference it first which crashes if it was null (0 or another chosen value).
Well, in Rust you would use pattern matching, which can't even crash.
In Haskell, the closest thing to adding 5 to an optional value would be something like:
This one leaves 'Nothing' alone, but adds 5 in case the value is present.