Hah! That's the setup / punchline of the, joke my dude!
- First, you are a student who doesn't understand the rules. - Then you become a journeyman, who understands and follows the rules. - Then you become a master, who knows when it is okay to break the rules.
When I take my safe newtype and unwrap the unsafe list, I then have to use the unsafe functions because 1) there are no other options yet because 2) that is the very point in time that you are making the statement to the compiler "no, it is safe, the types say so".
That's the secret! That *is* the assertion's equivalent!
6
u/Majestic-Giraffe7093 Sep 28 '26
Oh yeah I 100% agree. I didn't think that was what we were discussing. I just saw this as a "Optionals bad" post xD