| ▲ | empath75 3 days ago |
| > It's never been clear to me where such a type is actually useful. In what cases do you really need to restrict it to valid UTF-8? Because 99.999% of the time you want it to be valid and would like an error if it isn't? If you want to work with invalid UTF-8, that should be a deliberate choice. |
|
| ▲ | maxdamantus 3 days ago | parent [-] |
| Do you want grep to crash when your text file turned out to have a partially written character in it? 99.999% seems very high, and you haven't given an actual use case for the restriction. |
| |
| ▲ | empath75 3 days ago | parent | next [-] | | Rust doesn't crash when it gets an error unless you tell it to. You make a choice how to handle the error because you have to it or it won't compile. If you don't care about losing information when reading a file, you can use the lossy function that gracefully handles invalid bytes. | |
| ▲ | gf000 3 days ago | parent | prev [-] | | Crash? No. But I can safely handle the error where it happens, because the language actually helps me with this situation by returning a proper Result type. So I have to explicitly check which "variant" I have, instead of forgetting to call the validate function in case of go. |
|